




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于android的查询字典的设计与实现详细设计南昌航空大学东软班 详细设计报告 版本:0.1.0总页数 正文 附录 生效日期编制 批准南昌航空大学东软班 详细设计报告 版本:0.1.0修 改 履 历修改编号 日期 修改人 版本号 修改内容1 0.1.0 初始做成南昌航空大学东软班 详细设计报告 版本:0.1.0目 录1 文档概述 .51.1 文档目的和范围 .51.2 术语/缩略语 .51.3 参考文档 .52 界面设计与实现 .52.1 界面设计准则 .52.2 界面设计 .52.2.1 欢迎界面.6 2.2.2 主界面.6 2.2.3 查询界面.6 2.2.4 生词本界面.6 3 功能设计与实现.7 3.1 离线查询功能的设计与实现.8 3.2 在线查询功能的设计与实现.9 3.3 生词本功能的设计与实现.10 南昌航空大学东软班 详细设计报告 版本:0.1.01 文档概述1.1 文档目的和范围此文档是对基于 android 的查询字典的设计与实现的详细设计描述,主要是描述了各个模块在 Android 平台上的设计实现方法和技术手段。1.2 术语 /缩略语序号 术语/缩略语 说明1 Activity Activity 是 Android 组件中最基本也是最为常见用的四大组件之一,是一个负责与用户交互的组件2 SQLiteSQLite 是一个开源的嵌入式关系数据库,实现自包容、零配置、支持事务的 SQL 数据库引擎。 其特点是高度便携、使用方便、结构紧凑、高效、可靠。1.3 参考文档序号 文档名 作者 时间 版本1 详细设计模板 东软 IA 事业部 2007-11-9 0002 详细设计方法 东软 IA 事业部 2007-11-9 000南昌航空大学东软班 详细设计报告 版本:0.1.02 界面设计与实现2.1 界面设计准则本 Android 程序用户界面设计准则如下:1)干净而不过于简单。2)关注内容而非修饰,显示正确的内容,最常用的的操作需要最快被用户看到并且可用。3) 给予用户适当的回馈,给给予用户进度提示,但是不要干扰他们的当前的操作。4) 有章可循的行为模式,使用合适的方式来加强功能的可见性。5)容忍错误,尽量减少不可退回的操作。6)保存一致,让用户容易投入其中,可附加少许变化。根据以上 Android UI 设计原则,重点考虑界面和图标设计两方面。注意选用 5 种界面布局 LinearLayout(线性布局) 、TableLayout(表格布局) 、 RelativeLayout(相对布局) 、AbsoluteLayout(绝对布局) 、FrameLayout(框架布局) 中的合适布局。2.2 界面设计 2.2.1 欢迎界面欢迎界面是用户运行该软件的时候第一个出现的界面,该界面主要也就是对用户使用该软件的简单介绍,起到视觉上的缓冲作用。主要的设计还是在 XML 中实现的,在 XML中定义一个 ImageView 控件,来加载 drawable-hdpi 文件中的 logo 图片。而 Index 类主要实现的是在欢迎界面的运行视觉。运行软件的时候在欢迎界面出现一定的时间后,Index 类自动控制该界面运行一段时间后,自动的跳转到主功能界面。界面的设计示意图如图 2-1:南昌航空大学东软班 详细设计报告 版本:0.1.0图 2-12.2.1 主界面主界面是在欢迎界面之后出现的一个可操作界面,该界面就是让用户通过这个界面来选择自己所需要的操作。主要就是在 XML 文件中布置 Button 按钮控件,然后分设置相应的属性,设置不同 Button 按钮的 ID 属性,然后 Function 类对该界面的实现。通过类中定义的 Button,用 FindViewById 方法获取各个 Button 按钮的 ID 值。然后分别为按钮设置监听器。最后把监听器绑定到相应的 Button 按钮上,实现界面之间的跳转。界面设计的示意图如图 2-2:南昌航空大学东软班 详细设计报告 版本:0.1.0图 2-22.2.1 查询界面查询的功能就是把查询到的结果显示出来,在线和离线部分查询界面差不多。当在屏幕中输入要查询的内容,点击查询按钮,触发监听器,进行数据匹配,最终显示查询结果。总的设计过程是要在 XML 文件中布局,总体布局是运用线性布局,然后在几个线性布局共同作用成一个查询界面。主要是一个 AutoCompleteTextView、一个 Button 和一个TextView,AutoCompleteTextView 控件是自动提示控件,在这里主要就是实现单词的模糊查询, TextView 是显示文本的信息。在这里设置好这些控件后,设置各控件相应的属性。界面的示意图如 2-2:南昌航空大学东软班 详细设计报告 版本:0.1.0图 2-32.2.1 生词本界面生词本的功能就是把添加到生词本的单词显示出来。当打开生词本的时候,显示所有添加到生词本的单词和相关解释,如果通过一段时间的学习好记忆,已经熟悉掌握了生词,里面设置有删除按钮,可以将其删除。示意图如图 2-4:图 2-4南昌航空大学东软班 详细设计报告 版本:0.1.03 功能设计与实现3.1 离线查询的设计与实现在离线查询时,我们首先要解决前面提出的主要技术问题,即如何将保存单词信息的数据库文件随程序(apk 文件)一起发布;发布后如何打开数据库;如何实现模糊查询。下面我们将逐一解决这些问题。1 如何将 SQLite 数据库(dictionary.db 文件)与 apk 一起发布?在此软件中我们使用的是以将 dictionary.db 文件复制到 Eclipse Android 工程中的res/raw 目录中,所有在 res/raw 目录中的文件不会被压缩,这样可以直接提取该目录中的文件。2 如何将 res/raw 中的数据库文件打开?在 Android 中不能直接打开 res/raw 目录的数据库文件,而需要在程序第一次启动时将该文件复制到手机内存或者 SD 卡的某个目录中,然后在打开数据库文件。复制的基本方法是使用 getResources().openRawResource 方法获得 res/raw 目录中资源的 InputStream 对象,然后将 InputStream 对象中的数据库写入其他的目录中相应文件中。在 Android SDK 中科院使用 SQLiteDatabase.openOrCreateDatabase 方法来打开任意目录中的 SQLite 数据库文件。本程序使用 openDatabase 方法来打开数据库文件。3 如何实现模糊查询模糊查询就是在输入一个单词的首字母时,系统会调用数据库中的所有单词出来,并按序显示出来。当然随着输入的字母的个数,慢慢的定位到该单词。在程序中实现该功能主要是使用 AutoCompleteTextView 这个组件。而在 AutoCompleteTextView 类中有个SetAdapter 方法,然后把一个 Adapter 对象绑定到 AutoCompleteTextView 组件中,在AutoCompleteTextView 组件中输入两个以及两个以上字母后,AutoCompleteTextView 组件就会在这个绑定的 Adapter 对象中查找以所输入的字符串开头的单词,显示在AutoCompleteTextView 组件下方的列表中。模糊查询的方法,主要是方便用户。当用户有时候对一些单词不熟悉或者是忘记了,只是记得单词的前几个字母,也完全可以查找到这个单词的完整拼写形式。实现这个功能南昌航空大学东软班 详细设计报告 版本:0.1.0的详细过程主要如下:由于 Adapter 对象即可以从数组、list 等一些对象中获得数据,又可以从 Cursor 对象中获得数据。由于程序使用了 SQLite 数据库来保存词汇信息,因此,在该程序里使用从Cursor 对象中获得数据方法来创建 adapter 对象。这需要定义一个 DictionaryAdapter 类,该类需要从 CursorAdapter 类继承。这个类把 Course 中的内容取出来,形成一个字符串,然后把这个字符串绑定到一个已经存在的 View 中显示在界面上。此程序的核心就是查找英文单词的中文释义。在查找中文意思之前,首先需要使用openDatabase 方法在 Main 类的 onCreate 方法中打开 SQLite 数据库,代码如下:database=openDatabase();其中 database 是在 Main 类中定义的 SQLiteDatabase 类型变量。然后在查找按钮的单击事件中添加如下代码来查找英文单词,并显示中文意思。3.2 在线查询的设计与实现当用户连接移动网络在线查询时,使用在线查询的功能,可发送网络请求,获取网络词典等相关内容。HTTP 通信协议,国内手机用户可接入的移动网络制式有 2G、3G 、以及 WIFI 网络,其中 2G 网络为基于 GSM 的 GPRS 无线网络,有 CMWAP 和 CMNET 两种接入方式。采用 CMNET 接入方式,移动设备通过网络地址转换设备 NAT 访问外部网络,由于 NAT 是工作在 TCP/IP 网络层次模型的第三层网络层,使得这种方式连接的移动设备拥有完全Internet 的访问能力,对于 TCP,UDP 网络传输协议没有任何限制。该程序中创建 URL,并使用 URLConnection/HttpURLConnection,来实现网络编程,这部分接口的基本操作主要包括:1)创建 URL 以及 URLConnection/HttpURLConnection 对象2)设置连接参数3)连接到服务器4)向服务器写数据5)从服务器读取数据在输入框中输入要查询的内容,点击查询按钮,向服务器发送请求,返回查询结果。南昌航空大学东软班 详细设计报告 版本:0.1.03.3 生词本的设计与实现生词本实现的主要功能:生词本的添加和删除 。 程序用 addNewWordList()添加生词到生词本列表,saveNewWordList()保存生词内容到 SQLite 数据库,removeNewWordFromList()从生词本列表删除生词。对解析成的数组列表 ArrayList 调用.remove()方法。从 SQLite 数据库中把生词本文件加载进来,序列化成_newNewWordFile 文件,反序列化解析成 ArrayList。使用 ExpandableListView 控件显示生词本内容,ExpandableListView是一个垂直滚动的显示两个级别(Child,Group )列表项的视图,列表项来自ExpandableListAdapter。CandidataListAdapter 继承于 BaseExpandableListAdapter,它是ListVi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年旅游服务礼仪与服务质量标杆考核试卷
- 2025年零售行业绿色认证标准更新应对合规考核试卷
- 2025年零售行业直播电商直播后流量承接认证考核试卷
- 2025年新能源行业农村光伏扶贫转向乡村振兴绿色能源消费资格考核试卷
- 2025年传媒行业自媒体监管水平考试-数据安全监管的技术手段与机制考核试卷
- 喜达屋 协议书
- 武汉就业协议书
- 协议书离婚办理流程
- 航次租船合同(GF-91-0405)2025年履行条件补充
- 营销方案感悟
- 经口腔镜甲状腺切除术
- 煤矿回收材料管理制度
- DB32T 5124.1-2025 临床护理技术规范 第1部分:成人危重症患者目标温度管理
- DB34T 4985-2025“多规合一”实 用性村庄规划编制规程
- 山东省威海市荣成市实验中学(五四制)2024-2025学年八年级上学期期末考试数学试题(含部分答案)
- 2025年云南事业单位a类真题及答案
- 《非甾体抗炎药物》课件
- 烟道供货及安装合同模板
- 美容皮肤临床技术操作规范方案
- 2025年机关意识形态工作要点
- 交通安全设施培训课件
评论
0/150
提交评论