1、基于Android的简单记事本摘要:本文主要阐述了基于Android的简单记事本的设计与实现,较为系统的介绍了用户通过点击add按钮编辑事件、通过save按钮添加事件,以及在主界面查看事件列表、单击列表查看单个事件的详细容,和通过长按列表弹出对话框,选择修改事件、删除事件等。本文主要介绍的是运用eclipse软件进行Android应用的设计,如使用Activity类、运用Intent技术实现页面的跳转、通过数据存储实现标题、时间、容的保存以及取出查看的功能。通过以上技术使应用中的各项操作简便易懂并且有明确的提示,让用户可以更清晰快捷地掌握该记事本的使用,为用户节省了时间,为用户提供了便利,随时
2、随地都能记录生活。关键词:Android、记事本、Intent、Activity绪 论一、开发背景及意义近年来,随着媒体和信息技术的快速发展,国外的智能手机发展趋势越来越好,随着人们生活水平的提高,人们对于智能手机功能的需求量也相对增加,智能手机的涉及围已经布满全世界,因为智能手机具有优秀的操作系统、可自由安装各类软件、完全大屏的全触屏式操作感这三大特性,所以完全终结了前几年的键盘式手机。随着智能手机的发展,Android系统也广泛发展起来,收到用户普遍欢迎。Android系统作为智能手机系统,因其自由及开放源代码使得它具有极强的竞争力。2014第一季度Android平台已占所有移动广告流量来
3、源的42.8%,首度超越IOS。然而随着现在人们的生活水平和质量的提高、人们的压力也越来越大,而且压力来源也是多元化的,更多的人希望靠电子工具来帮自己记录一些重要的事件,避免自己忘记而造成不良后果,该简单的记事本应用将会很好的帮助用户们,使他们生活更轻松。二、国外研究现状目前国外有4款比较火的记事本软件。分别是Evernote,小米便签,NoteEverything,麦库记事。Evernote 在软件界面方面界面清爽,需注册登录后才可使用,图标布局比较协调;记事方面可编写容,添加标签,支持上传图片、音频、视频、文件等附件;特色功能方面具有搜索笔记和发送笔记、定位服务、同步等功能;资源占用方面存
4、占最多,CPU占用适中。小米便签在软件界面方面界面功能简单,可查看和新建便签,菜单功能相对丰富;记事方面只支持文字容,可以选择桌面Widget颜色,字体大小等;特色功能方面可以移进文件夹和分享、备份、还原和设置保护密码;资源占用方面存占用较中,CPU占用最少。Note Everything界面简洁,上方有新建记事和搜索等按钮,菜单功能非常丰富;支持文本、绘图、语音、图片、清单、图库、视频、条形码等形式,可固定显示记事;特色是单个记事加密,数据备份、还原、导入、到处,创建快捷方式;存占用最少,CPU占用较中。麦库记事界面比较精美,菜单功能相对简单;可选分类、加标签、附件,支持拍照和实时录音。特色
5、是笔记搜索和分类,网络同步和笔记分享;存占用适中,CPU占用最多。三、主要研究容在学习了一期的Android应用开发后,介于此,本项目开发了简单记事本应用系统用于完成期末项目。本项目开发过程主要有程序设计、代码编写、系统测试、文档编写等,目标是实现提供Android记事本应用,使用户能够方便快捷地记录下重要事件,为用户们带来便利的服务。1 需求分析和概要设计1.1需求分析记事本主要作为日常生活记录重要事件的工具成为了当今智能手机自带的重要功能。其功能包括: 添加事件 查看事件 修改事件 删除事件1.2整体要求本应用是用于实现为Android用户提供记事本功能的简单项目,其目标是实现添加、编辑并
6、保存事件,以及对已添加事件的操作,如查看、修改、删除。在该应用的构建中的重点就在数据储存方面,通过设计该应用熟练掌握了数据储存的技术。由于其技术含量不是非常高,所以需要在交互界面方面下功夫,重点在于操作方便快捷,提示清晰易懂,使用户不需要更多说明就可以熟练地操作,整个系统也不繁琐,使用户在操作中保持轻松的心情,从而赢得大家喜欢,为其发展做铺垫。1.3 开发工具和环境Android运行环境由两部分组成:Android核心库集和Dalvik虚拟机。其中核心库集提供了Java语言核心库所能使用的绝大部分功能,而虚拟机负责运行Android应用程序。每个Android应用程序都运行在单独的一个Dalv
7、ik虚拟机,因此Dalvik专门针对同时高效地运行多个虚拟机进行了优化,因此Android系统可以方便地实现对应用程序进行隔离。 Dalvik虚拟机非常适合在移动终端上使用,相对于在PC或服务器上运行的虚拟机而言,Dalvik虚拟机不需要很快的CPU 计算速度和大量的存空间,它主要有如下两个优点:运行专有的.dex文件。专有的.dex文件减少了.class文件中的冗余信息,而且会把所有.class文件整合到一个文件中,从而提高运行性能;而且DX工具还会对.dex文件进行一些性能的优化。 基于寄存器实现。大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。2 系统设计2.1
8、系统设计架构该应用是由三个页面组成的,分别是主页面(NotepadActivity)、编辑页面(EditTextActivity)、查看页面(CheckListActivity),整个系统架构如下图2-1所示。图2-1 应用系统架构图2.2 界面概述该系统共有3个主要的页面,分别是主页面、编辑页面以及查看页面,如下图2-2、2-3、2-4所示:图2-2 主页面视图 图2-3 编辑页面视图 图2-4 查看页面视图2.3 模块概述主页模块:已经添加过的事件通过主页中的列表显示出来,还可以点击添加按钮add新建模块;编辑模块:可以新建事件并对其标题和容进行编辑,以及把编辑好的事件保存并显示到列表中,
9、已经添加过的事件也可以通过该模块进行修改;查看模块:通过该模块可以查到事件的详细信息,如创建时间、标题和容等;删除模块:该模块可以将已添加的事件删除,删除后的事件不会再出现在列表中。3 系统详细设计该项目运用了Activity、Intent以及数据存储等Android的核心技术,详细介绍如下:3.1 NotepadActivity类此Activity为主界面,显示了事件列表以及添加按钮add。3.1.1add按钮监听从主界面跳转到编辑界面publicclass AddButtonListener implements OnClickListenerpublicvoid onClick(View
10、 v) Intent intent = new Intent(); intent.putExtra(state, EDIT_STATE); intent.setClass(NotepadActivity.this, EditTextActivity.class); NotepadActivity.this.startActivity(intent); 3.1.2ListView监听publicclass MenuCreateListener implements OnCreateContextMenuListenerpublicvoid onCreateContextMenu(ContextM
11、enu menu, View v, ContextMenuInfo menuInfo) final AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menuInfo; menu.setHeaderTitle(); menu.add(0, 0, 0, 删除); menu.add(0, 1, 0, 修改); 3.1.3initListView()方法遍历了数据库,方便获取数据3.2EditTextActivity类此Activity为编辑界面,显示了可编辑的标题和容以及保存按钮save。3
12、.2.1save按钮监听单击时将数据保存到SQLite并跳转到主页面publicclass SaveButtonListener implements OnClickListenerpublicvoid onClick(View v) titleText = title.getText().toString();contentText = content.getText().toString();trydm.open();if(state = EDIT_STATE) dm.insert(titleText, contentText); if(state = ALERT_STATE) dm.up
13、date(Integer.parseInt(id), titleText, contentText); dm.close();catch(Exception e) e.printStackTrace();Intent intent = new Intent();intent.setClass(EditTextActivity.this, NotepadActivity.class);EditTextActivity.this.startActivity(intent); 3.3CheckListActivity类此Activity为查看界面,显示了单个事件的标题容和时间。3.4Database
14、Helper类此类封装了数据库管理方法publicclass DatabaseHelper extends SQLiteOpenHelperprivate String tableName = record;private String sqlite = create table if not exists + tableName +(_id integer primary key autoincrement, +title varchar, +content text, +time varchar);public DatabaseHelper(Context context, String
15、name, CursorFactory factory,int version) super(context, name, factory, version); publicvoid onCreate(SQLiteDatabase db) db.execSQL(sqlite); publicvoid onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) 3.5DatabaseManager类创建数据对象,使用数据对象的方法处理数据3.6ListViewAdapeter类自定义了一个适配器方便view绑定数据4 系统的不足及展望
16、在该应用中还有很多不足需要不断完善,也有很多想要实现但由于能力有限没有达到的效果。4.1 不足4.1.1 没有特色与其他记事本应用相比较没有突出的特色,没有吸引用户来使用的亮点,希望可以更新颖,实现更多功能。4.1.2 支持的形式太少该应用不支持图片、音频、视频等格式,容太过单调,不能记录下文字不能表达的事件。4.2 展望4.2.1 可以实现备忘录提醒记事本的主要功能就是帮助人们记录重要事件,但该记事本应用必须让用户定时查阅才能知道所记录的事情,比较不方便,希望可以通过一些技术实现提醒功能,可以设定提醒时间,到时自动提醒用户,这样用户就不用担心错过重要的事情造成不良后果。5 总结该系统是简易的
17、Android记事本应用,在Eclipse中运用Activity、Intent以及数据储存等技术设计应用,实现简单的记事功能。本系统旨在为用户提供记录、保持、查阅、修改、删除事件的功能,使用户的生活更加轻松便利,避免因遗忘而造成不良后果。该系统的主要特点有:1.操作简单易懂,提示明确清晰2.该具有强大的实用性,让用户用的轻松愉快。3.该将会成为辅助用户工作、学习、生活的好帮手,为用户记录每一项任务4.值得在公司发扬,让上班族工作更轻松 ,效率更高但是能力和精力的有限,系统中还有许多不足和有待优化的地方,其技术不够高,系统功能也不完善。在完成课程设计的过程中,得到了进一步的锻炼,操作更加熟练,对
18、以后的毕业设计和论文、答辩都有了一定了解。在这学期学习的容中还有一些技术没有用到该应用中,我还会继续学习继续练习,希望能够把这学期老师所教的技术都熟练掌握,并将自己做的应用不断完善。参考文献1 郭宏志.Android应用开发详解.电子工业,20102 靳岩,尚朗Android开发入门与实战人民邮电,20093 (美国)Rick Rogers (美国)Blake Meike (美国)Zigurd Mednieks 等Android应用开发人民邮电,20104 (美)墨菲Android开发入门教程人民邮电,20105 兴华Android开发实战经典清华大学,20126 吴亚峰Android编程典型实例与项目开发电子工业,2011致 在此感老师这一学期为我们的付出,你的尽职尽责我们都有目共睹,平时不论是课堂操作还是实验作业,你都严格要求我们,在每次实验作业中我都会有不一样的收获,得到了好的成果才懂得你的良苦用心。感老师让我们在期末做了课程设计、论文和答辩,让我们为今后的毕业答辩有了一定的认识,虽然第一次做这些还有很多不足,我会不断完善,不辜负老师苦心。
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2