1、摘要基于安卓平台的个人记事本管理软件设计摘要随着信息化社会的发展,Android智能产品已日益成为越来越多的人们选择的移动终端产品。伴随着Android智能手机与平板电脑已经在我们生活大量的使用,越来越多的基于Android开发平台的应用也随之出现。本次毕业设计主要是基于Android平台的android技术,JAVA语言,程序设计环境是eclipse+android SDK。轻量级数据库SQLite数据库+文件存储,主要存放一些字段信息,以及图文路径。功能方面主要在传统记事基础上实现图片记事、存储,语音记事存储,视频记事、存储,还有对各类信息的检索功能,各类信息的发送功能。在本次软件设计中,
2、用到了Android平台提供的Adapter适配器,软件中的诸多功能,都是通过继承适配器来适配页面上所要展示的基本信息。然后就是通过统一页面的色调,整顿整个界面风格。软件的主要目标就是解决现在的人们对丰富生活的记事需求,在这个前提下,继续美化Android界面。关键词:Android;记事本;多功能;noteDesigned of manage personal notepad software based androidAbstractWith the development of information society , Android smart products has become
3、 increasingly more and more people choose mobile terminal products. With Android smartphones and tablet computers have a lot of use in our lives , more and more Android -based application development platform also will appear.The graduation project is mainly based on the Android platform android tec
4、hnology , JAVA language and programming environment is eclipse + android SDK. + Lightweight database SQLite database file storage , storage of some of the major fields of information , as well as graphic path. The main achievement of the picture notepad function , storage, voice memo storage, video
5、notes, memos stored in the traditional basis , there are all kinds of information retrieval , sending all kinds of information. In the design of this software , use the Adapter adapter , software Android platform provides many functions are to fit on the page to show the basic information through in
6、heritance adapter. Then the page is through uniform color , straighten the entire interface style.The main goal now is to solve the software needs to enrich the lives of people note , in this context, to continue to beautify the Android interface.Keywords : Android; notebook ; multifunctional ; note
7、I目录目录摘要IAbstractII第一章 绪论- 1 -1.1课题研究背景及意义- 1 -1.2国内外发展现状- 2 -1.3设计方案概述- 3 -1.4主要研究内容- 4 -1.5论文结构- 4 -第二章 相关技术介绍- 5 -2.1 Android-简介- 5 -2.2 Android-用户操作界面 Activity- 5 -2.3 Android-布局- 7 -2.4 Eclipse+android SDK构建开发平台- 9 -2.5 SQLite轻量级数据库- 10 -第三章 需求分析- 11 -3.1 功能需求- 11 -3.2性能需求- 11 -3.3可行性分析- 12 -3.4
8、 安全分析- 12 -第四章 概要设计- 13 -4.1系统总体流程图- 13 -4.2各个模块的介绍- 13 -4.3数据库表的设计数据表设计- 15 -第五章 记事本详细设计- 17 -5.1布局设计- 17 -5.2 功能界面设计- 26 -第六章 系统测试- 35 -6.1 文本记事所有功能测试- 35 -6.2 图片记事所有功能测试- 39 -6.3 语音记事所有功能测试- 45 -6.4 视频记事所有功能测试- 46 -6.5 检索功能测试- 46 -第七章 总结与展望- 47 -致谢- 48 -参考文献- 49 -附录A 外文翻译-原文部分- 51 -附录B 外文翻译-译文部分-
9、 57 -I某学校毕业设计(论文)第一章 绪论1.1课题研究背景及意义随着信息化社会的发展,Android智能产品已日益成为越来越多的人们选择的移动终端产品。伴随着Android智能手机与平板电脑已经在我们生活大量的使用,越来越多的基于Android开发平台的应用也随之而出,为丰富人们使用Android智能产品的用途,使其可以帮人们记录一些事情。例如手机记事本,备忘录,便签等等,都在随着现代化的脚步的改变而改变,生活还是生活,但是需求却不一样。传统的记事本管理软件采用的文本记事的方式记录各式各样的事件,但是这样的记事方式存在很多的缺点:比如局限性,只能以文字的形式记录;太单调,整款软件就一页内
10、容,内容不够丰富;功能不够强大,现在的生活中可以记录的东西是很多的,例如人物、风景、地点、生活中的一段事情。所以Android记事本可以开拓的功能其实可以有很多。文本记事、拍照记事、语音记事、视频记事等。随着现在生活质量的不断提高,记事在我们的生活中已经渐渐演变成一个很重要的角色。比如拍照之后,你可能还想说点什么来记录一下,比如,你希望将此刻这张有意义的图片记录下来,再比如你希望有更快捷的方式来记录当前的紧要事情等等。现在的Android系统已经很普遍了,并且各种安卓应用层出不穷,Android本身提供的开发平台也很方便,简单,对开发人员基本要求并不是太高,但是目前来说系统自带的记事软件确实功
11、能确实太单调,人们有各种各样的记事需求,所以,记事软件功能需要更加强大起来,才能满足现在人们的实实在在的需求。单一的个人记事本已经成为过去,为了满足现在人们丰富的生活需求,就更应该丰富个人记事本的功能,去除传统的局限性,记事本不再只是最简单基本的软件,它将成为人们的依赖,成为人们的助力,成为人们生活中不可缺少的一部分。现今的微信、QQ、人人网、等各种安卓APP都是讲究分享,讲究即时拍照、记事的,所以本次论文的主要方向也是要跟得上Android开发的脚步,跟Android各种可共享APP做对接,自己有效方便记事的同时,也能跟大家分享快乐的生活,甚至通过手机记事、发送功能达到一个短信群发的效果,使
12、生活变得更有条理性。从多方面角度来说,达到一个记事多元化的目的。1.2国内外发展现状1.2.1 Android国内外发展现状相信大家对Android的发展历史多少都有一些了解,Android曾经是一家创立于旧金山的公司的名字,该公司于2005年8月份被Google收购,并从此踏上了飞速发展的道路。经过这几年的发展,它已经发展成了一个平台、一个生态体系。现在Android在移动领域已经得到了广泛的应用。根据Google于2011年6月份公布的数字,现在每天激活的Android设备高达50万台,比5月份的数据增加了0万台!Google还透露目前已经与36家OEM厂商和215家运营商合作,共激活了超
13、过1亿台Android设备。相比于Symbian的日落西山,以及苹果的封闭、Windows Phone的前途未卜,Android无疑代表了当前行业发展的主流趋势:开放平台取代了封闭平台。让参与者均能通过自己的努力而获益。从2008年9月公布1.0版本以来,经过近6年的跨越式发展,现在Android已经发展到了4.x版本,这是一个针对平板电脑而做了大量优化的版本,包括对更大屏幕的支持的类库、多任务优化等。目前市场上占主流的还是2.2版本,当然,相信随着时间的推移,4.x及后续版本会得到越来越多的设备的支持。目前国内的Android开发还是主要以应用开发为主,主要分成3类:为企业开发应用、开发通用
14、应用(放到Android Market或者其他App Market销售)以及游戏开发(放到Android Market或者其他App Market销售)。第一类开发者一般身处规模较大的公司,这些公司主要为自有品牌或者其他品牌设计手机或者平板电脑的总体方案。除了根据需求对系统进行定制外,更多的工作在于为这些系统编写定制的应用。第二类开发者,一般处于创业型公司或者是独立开发者,他们的盈利方式主要是2种:为国外公司进行外包开发,或者通过Google的移动广告(AdMob)通过广告点击分成。而理论上的通过付费下载的形式来盈利的,现在国内鲜见成功者。第三类开发者,目前和第二类开发者类似。另外随着安卓手机
15、的市场占有率的提升,安卓平台的应用需求也是在不断上升,对于手机应用的未来期望也很高,尤其是游戏、生活这两块,现今的安卓手机游戏的开发并不是很完善,仍然有许多触屏局限的地方。现今的安卓市场许多大公司都投入大力的游戏这一块,所以生活这一块目前来说还是有很大可发展空间的,例如备忘录、- 1 -记事本、地图导航、语音搜索这些较为贴近生活的应用种类还并不是很多,国外已经有许多贴近生活的安卓应用诞生了,相信未来安卓的生活市场也会逐渐打开。1.2.2Android记事本发展现状目前国内外目前已经有四款比较火的记事本软件。分别是Evernoto,小米便签,麦库记事。Evernote在软件界面方面界面清爽,需注
16、册登录后才可使用,图标布局比较协调;记事笔记方便面可编写内容,添加标签,支持上传图片,音频,视频等,资源占用方面内存占最多,CPU占适中。小米便签在软件界面方面界面功能简单,可查看和新建便签,菜单功能相对丰富,只支持文字内容及时,可选择桌面颜色,字体大小等,可以移进文件夹和分享、备份、还原和设置密码保护;资源占用方面内存占用适中,CPU占用最少。麦库记事界面比较精美,菜单功能相对简单;可选分类,加标签、附件、支持拍照和实时录音。特色是笔记搜索和分类,网络同步和笔记分享;内存占用适中,CPU占用最多。1.3设计方案概述综合安卓记事本的功能需求和性能需求,以及安卓软件在对人视觉效果上面的影响,我们
17、计划这次论文以实现记事本基本功能为主导方向,完善界面的UI设计,现今的一些安卓软件界面设计的效果主要以柔和清爽为主,所以本次安卓应用设计我们也采用柔和色调,界面尽量清爽一点,但是功能上面不可省略,在具备所有基本功能的前提下,包括文本记事、图片记事、语音记事、视频记事四大基本功能的增删改查、还有对四大记事内容的检索、对四大记事信息的分享,充分整合功能,避免界面设计太复杂,必要做到一看就懂,尽量符合现今安卓市场的APP元素。在考虑前面所述的情况下,由于手机屏幕较为有限,一次可展示的内容不可过多,所以针对四大模块,不采用一个模块一个按钮来向导,而通过采用安卓界面左右滑动切换的模式来切换四大模块。而四
18、大模块的添加记事则是统一整合在一个按钮上,信息检索也统一整合在一个按钮上,每一单独记事的管理则通过长按的方式弹出单处处理的功能导向,例如,删除、编辑、发送(即分享)等功能都通过长按的方式展示。- 3 -某某大学毕业设计(论文)1.4主要研究内容按照上面的设计方案,在本次毕业设计中需要研究的内容主要有:数据库表的设计,文本记事的功能实现、界面设计,图片记事的功能实现、界面设计,图片的缓存处理,摄像头的处理,语音记事的功能实现、界面设计,视频记事的功能实现、界面设计,一些检索结果的关键字的高亮处理,整体风格统一。1.5论文结构本文共分为七章第一章 介绍了课题研究的背景及意义、国内外发展现状、设计方
19、案概述、以及主要研究内容。第二章 主要是介绍本次毕业设计用到的相关技术,JAVA,Android,用户界面布局,数据库。第三章 是需求分析,主要是对本次软件的功能需求,性能需求,可行性,安全性四个方面进行一个描述。第四章 是对系统的总体流程的设计,各个模块流程的设计以及对数据库设计的介绍。第五章 是论述对整个系统的详细设计。第六章 是对系统的功能测试。第七章 对本次毕业设计的结论与对未来的展望。最后是致谢词和参考文献。第二章 相关技术介绍2.1 Android-简介Android是一种以linux为基础的开放源代码操作系统,主要使用于便携设备。目前尚未有统一中文名称,中国大陆地区较多人使用“安
20、卓”或“安致”。Android操作系统最初由AndyRubin开发,最初主要支持手机。2005年由google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。Android的主要竞争对手是苹果公司的iOS以及RIM的BlackberryOS。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。2012年2月数据,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为68.4%。Android的系统架构和其它操作系统一样,采用了分层的架构。android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层
21、和linux核心层。Android是以Linux为核心的手机操作平台,作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开放式操作系统。在Android中,开发者可以使用Java作为编程语言来开发应用程序,也可以通过NDK使用C/C+作为编程语言来开发应用程序,也可使用SL4A来使用其他各种脚本语言进行编程(如:python、lua、tcl、php等等),还有其他诸如:QT(qtforandroid)、Mono(mono
22、forandroid)等一些著名编程框架也开始支持Android编程,甚至通过MonoDroid,开发者还可以使用C#作为编程语言来开发应用程序。另外,谷歌还在2009年特别发布了针对初学者的AndroidSimple语言,该语言类似Basic语言。而在网页编程语言方面,JavaScript,ajax,HTML5,jquery、sencha、dojo、mobl、PhoneGap等等都已经支持Android开发。2.2 Android-用户操作界面 ActivityAndroid 应用的所有界面都是通过Activity窗口化展示的,并且每一个Activity是单独的,用于处理用户操作。几乎所有的
23、Activity都要和用户打交道,所以Activity类创建了一个窗口,用户看的和操作的都在Acticity窗口上,开发人员可以通过setContentView(View)接口把设置好的UI界面放到Activity创建的窗口上。在系统中的Activity被一个Activity栈所管理。当一个新的Activity启动时,将被放置到栈顶,成为运行中的Activity,就是展示在最顶端的窗口,前一个Activity保留在栈中,不再放到前台,直到新的Activity退出为止。Activity有四种本质区别的状态:在屏幕的最前(Activity栈顶),叫做可见状态或者活动状态或者运行状态(active
24、or running)如果一个Activity失去焦点,但是依然可见,叫做暂停状态(Paused)。一个暂停状态的Activity依然保持活力(保持所有的状态,成员信息,和窗口管理器保持连接),但是在系统内存极端低下的时候将被杀掉,通俗点说就是结束这个窗口。如果一个Activity被另外的Activity完全覆盖掉,叫做停止状态(Stopped)。它依然保持所有状态和成员信息,但是它不再可见,所以它的窗口被隐藏,当系统内存需要被用在其他地方的时候,Stopped的Activity将被杀掉。如果一个Activity是Paused或者Stopped状态,系统可以将该Activity从内存中删除,A
25、ndroid系统采用两种方式进行删除,要么要求该Activity结束,要么直接杀掉它的进程。当该Activity再次显示给用户时,它必须重新开始和重置前面的状态。总结一下:安卓就是通过堆栈的管理模式来管理所有的窗口即Activity(界面),当程序运行内存不足的时候,就自动杀掉非活跃状态的Activity,比如处于Stoped状态或者Paused状态,这样有效地保证了程序不会因为内存不足而无法运行新的进程。下面的图显示了Activity的重要状态转换,矩形框表明Activity在状态转换之间的回调接口,开发人员可以重载实现以便执行相关代码,带有颜色的椭圆形表明Activity所处的状态。图 2
26、-1Activity 的生命周期2.3 Android-布局为了适应各式各样的界面风格,Android系统提供了5种布局,这5种布局分别是:1、LinearLayout(线性布局) 在一个方向上(垂直或水平)对齐所有子元素,一个垂直列表每行将只有一个子元素(无论它们有多宽),一个水平列表只是一列的高度(最高子元素的高度来填充);2、TableLayout(表格布局)把子元素放入到行与列中,不显示行、列或是单元格边界线,单元格不能横跨行,如HTML中一样表格布局模型以行列的形式管理子控件,每一行为一个TableRow的对象,当然也可以是一个View的对象。TableRow可以添加子控件,每添加一
27、个为一列。3、RelativeLayout(相对布局)相对布局的子控件会根据它们所设置的参照控件和参数进行相对布局。参照控件可以是父控件,也可以是其它子控件,但是被参照的控件必须要在参照它的控件之前定义。4、AbsoluteLayout(绝对布局)绝对布局的子控件需要指定相对于此坐标布局的横纵坐标值,否则将会像框架布局那样被排在左上角。手机应用需要适应不同的屏幕大小,而这种布局模型不能自适应屏幕尺寸大小,所以应用的相对较少。5、FrameLayout(框架布局)。框架布局是最简单的布局形式。所有添加到这个布局中的视图都以层叠的方式显示。第一个添加的控件被放在最底层,最后一个添加到框架布局中的视
28、图显示在最顶层,上一层的控件会覆盖下一层的控件。这种显示方式有些类似于堆栈。利用这五种布局,可以在屏幕上将控件随心所欲的摆放,而且控件的大小和位置会随着屏幕大小的变化作出相应的调整。下面是这五个布局在View的继承体系中的关系:图2-2 界面布局Android 可以通过控制各个控件的属性达到想要的效果。下面介绍一下RelativeLayout用到的一些重要的属性:第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中android:layout_centerVertical 垂直居中android:layout_centerInparent
29、相对于父元素完全居中android:layout_alignParentBottom 贴紧父元素的下边缘android:layout_alignParentLeft 贴紧父元素的左边缘android:layout_alignParentRight 贴紧父元素的右边缘android:layout_alignParentTop 贴紧父元素的上边缘第二类:属性值必须为id的引用名“id/id-name”android:layout_below 在某元素的下方android:layout_above 在某元素的的上方android:layout_toLeftOf 在某元素的左边android:layo
30、ut_toRightOf 在某元素的右边android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐第三类:属性值为具体的像素值,如30dip,40pxandroid:layout_marginBottom 离某元素底边缘的距离android:layout_marginLeft 离某元素左边缘的距离androi
31、d:layout_marginRight 离某元素右边缘的距离android:layout_marginTop 离某元素上边缘的距离2.4 Eclipse+android SDK构建开发平台下载好Android SDK后,开始安装,Android SDK采用了Java语言,所以需要先安装JDK 5.0及以上版本。直接下载jdk安装文件安装更为方便。Android SDK不用安装,下载后,直接解压即可, 将下载后的SDK的压缩包解压到适当的位置,就这么简单;SDK安装OK。使用Eclipse进行android应用开发需要给Eclipse装adt插件,这样Eclipse就可以和android sd
32、k建立连接,可以在Eclipse中启动android模拟器进行程序调试等ADT插件安装这里不再累赘,插件的安装URL为:也可以下载adt的zip包安装 安装完插件后,需要做一些简单的配置:1、在Eclipse中,选择Window Preference;2、从左侧的菜单中,选择Android项;3、设置SDK Location,点Browse选择SDK的安装根目录;4、完成。2.5 SQLite轻量级数据库SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内
33、存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。第三章 需求分析3.1 功能需求3.1.1 文本记事(1) 基本增、删、改、查。(2) 发送:将记事信息以短信或者微信、QQ、邮件的方式发送给联系人。3.1.2 图片记事(1) 基本增、删、改、查。(2) 相机即时拍照。(3) 从原有图库增加。(4) 相册功能:新建相册、设置封面。(5) 发送:将图片信息以微信、QQ、邮件的方式发
34、送给联系人。3.1.3语音记事(1) 播放语音。(2) 按住按钮,持续录音,松开按钮则停止录音并保存。(3) 删除录音文件。(4) 发送:将语音文件以微信、QQ、或者邮件的方式发送给联系人。3.1.4 视频记事(1) 基本增、删、改。(2) 播放视频。(3) 发送:将视频文件以微信、QQ、或者邮件的方式发送给联系人。3.1.5 内容检索(1) 将所有记事信息根据标题关键字检索出来。3.2性能需求在进行文本检索时,应该保证系统运行流畅,图片加载时也应该尽量减少内存消耗,注意释放内存。加载音频和视频文件时,除了保证播放的流畅,还应当保证音质的品质,录音的质量。另外视频的像素最大化。整体风格要统一,
35、清晰,清爽,一看就懂。3.3可行性分析3.3.1 技术可行性技术上的可行性分析主要分析现有技术条件是否能顺利完成开发,软件配置否满足开发者需要等。这一特点非常适合计算机的特点,发挥计算机的数据处理速度快,准确率高的优势,现代计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。由于记事本软件管理系统这一类的软件开发已有一定的时期,有很多现有的实例,技术基础也非常雄厚,因而技术上的准备不成问题。3.3.2社会可行性社会可行性研究是对该软件投入使用后对社会可能带来的影响进行分析,比如是否为人们所接受,是否为社会带来效益。随着Android系统的普遍性,任意一款Android应用软件都有它一定
36、的潜质,另外现在各个版本的Android系统自带的记事本管理软件只有基本的文字记事功能。所以基于以上原因,本次开发的Android多功能记事软件应用确实能为人们的生活质量带来一定提高。3.4 安全分析Android技术已经发展将近10年了,从原来的市场主打2.x版本到现在的4.x版本,从技术上已经完全成熟,最有可能出问题的就是硬件方面了,但是安卓手机也有这么多年的发展历史了,手机硬件方面,也并不大,另外本次课题主要是安卓记事本软件,性质属于单机性质,也并不需要联网,不需要太大的保密性,所以从安全方面考虑,没有问题。第四章 概要设计4.1系统总体流程图此次系统设计中,共有四个页面,进入系统第一个
37、所见页面为文本记事页,左右滑动可跳转到,图片记事,语音记事和视频记事,共分四大模块。图4-1 系统总体流程图4.2各个模块的介绍在本次设计中设计了四个模块,也即是笔记、图片、语音、视频。每个模块的功能都不同,风格一致。4.2.1笔记模块基本流程图:图4-2 文本记事流程图4.2.2 图片模块基本流程图: 图4-3 图片记事流程图4.2.3 语音模块基本流程图:图4-4 语音记事流程图4.2.4 视频模块基本流程图:图4-5 视频记事流程图以上就是本次系统设计中的主要的流程示意图,不同模块对应着不同的功能,因而对应着不同的操作流程。所有的操作流程都简化,记事本原本就是简单方便的东西,所以也不需要
38、设计太复杂的界面。4.3数据库表的设计数据表设计表4-1 文本记事表字段名数据类型及长度是否允许空值主外键dates(创建日期)varchar(50)不允许nulltitle(标题)varchar(50)不允许nullcontext(记事内容)varchar(10000)允许null表4-2相册表字段名数据类型及长度是否允许空值主外键dates(创建时间)varchar(50)不允许主键theme(相册名)varchar(50)不允许nulltop_image(相册封面)varchar(50)不允许外键num(该相册的图片数量)varchar(1000)不允许null表4-3 图片记事表字段名
39、数据类型及长度是否允许空值主外键dates(创建时间)varchar(50)不允许主键title(标题)varchar(50)不允许nullimage_type_theme(相册名)varchar(50)不允许nullimg_url(图片保存路径)varchar(50)不允许nullcontext(记事内容)varchar(1000)允许null表4-4语音记事表字段名数据类型及长度是否允许空值主外键dates(创建时间)varchar(50)不允许主键title(标题)varchar(50)不允许Nullvoice_url(文件保存路径)varchar(50)不允许null表4-5视频记事表
40、字段名数据类型及长度是否允许空值主外键dates(创建时间)varchar(50)不允许主键Title(标题)Varchar(50)不允许nullvedio_url(文件保存路径)varchar(50)不允许null这里五个表中关联性不是很大,唯一的就是“相册表”中的“top_image”属性关联外键图片记事表中“dates”属性。第五章 记事本详细设计记事本图标设计5.1布局设计5.1.1 页面布局-主界面下图为本次设计软件的首页布局,首先展示的是文本记事页面。分三大部分:第一部分是最上面一行“标题栏”,右边有两个按钮,分别有两个不同功能:“”所代表的是添加记事功能模块,点击之后可以任意添加
41、一种记事。“搜索”按钮则表示的是内容检索模块,点击之后跳转到搜索界面,输入关键字则可查找出所有标题带关键字的记事,并且能查看记事内容。然后是第二部分的“模块向导”栏,点击即可跳转到相应模块页面。检索功能当然本次论文设计主要是操作简捷,所以设计了左右滑动切换模块的功能,向左滑动屏幕则可跳转到下一个页面,即下一个模块,向右滑动则跳转到上一个模块页面,操作很方便,简单。点击添加记事视频记事语音记事图片记事文本记事图5-1整体页面布局主页布局部分有一个最关键的代码部分:这部分布局代码就是实现四大功能左右滑动切换的部分,ViewPager,相当于一个容器,这个容器的应用很广泛,可以用来做界面导航,也可以
42、用来做屏幕切换,当然欢动切换还有其他方式可以实现,只不过这种是最之间,最简单的,开发者最容易理解和接收的一种,因此我选择了ViewPager来实现我想要的功能。5.1.2页面布局-文本记事如图5-2文本记事页面布局其实是保持总页面的“标题栏”和“模块向导”不变,然后加上如下图所示的内容展示部分,这部分用来展示所有的文本记事内容,然后都是通过单击或者双击每一项内容来达到操作目的,例如,删除、查看、修改标题、修改内容、发送等功能。新增依然保持界面统一风格,另外要说的是当初开发这块内容展示部分,原本是有滚动条的,后来观察了许多软件上面其实是把滚动条隐藏的,但是整体依然可以下拉,这样一来虽然性质没变,
43、但是展示的方式显得更柔和,更贴近现在的市场上的安卓软件的UI设计。内容展示文本记事图5-2文本记事页面布局以下部分为文本记事中“展示内容”部分的核心代码,主要原理是通过重写Android提供的Adapter适配器类中的 getView()函数。主要功能就是将数据传给页面显示。Overridepublic View getView(int position, View convertView, ViewGroup arg2) /适配器核心代码部分myView my_view=null;if(null = convertView)LayoutInflater inflater = LayoutIn
44、flater.from(mContext); convertView = inflater.inflate(R.layout.lay1_content, null);my_view=new myView();/找出页面布局中的显示标题的块my_view.title = (TextView)convertView.findViewById(R.id.title);/找出页面布局中现实时间戳的块my_view.dates = (TextView)convertView.findViewById(R.id.dates);/设置适配目标convertView.setTag(my_view);elsemy_view = (myView) convertView.getTag();String dates=list.get(position).get(dates);String title=list.get(position).get(title);my_view.dates.setText(dates)