- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
diary(比较好)
系统分析
项目的功能:
默认启动界面listview,包含了日记titile和对应的时间
如果第一次进入系统(也就是没有日记在数据库),判断用户从来没有写过日记,提示如何操作开始写(点击menu进入)
点击menu跳出”添加一篇新日记”和”删除一篇日记”
添加新日记 intent另外一个页面包括有:标题输入、内容输入(如果做复杂可以加入表情)、确定按钮、重写按钮。
到了主界面可以调出”删除一篇日记”进行删除
扩展功能点击menu可以出现“加密”。加密日记本
需要界面跳转:
主界面(显示标题和时间)
日记编写界面
数据存储:
ContentProvider
UriMatcher
特殊功能以及权限
onPrepareOptionMenu
OpenGL
重点:
本系统可以采用SQLite来完成,但是数据在android系统中是私有的,当然这些数据包括文件数据和数据库数据等等。那么两个程序如果交互数据该如何操作呢?
ContentProvider类提供了实习一组标准的方法接口,从而让其他应用程序保持或者读取此contentProvider的各种数据类型。也就是说:一个程序可以通过实现一个ContentProvider的抽象接口将自己的数据暴露出去,外界是无法查看,通过标准统一的接口和程序里面的数据进行打交道:读取、删除、查询等。
界面设计
键值对
需要的界面
主界面:diary_list.xml
编辑界面:diary_edit.xml
日记列表:diary_row.xml
数据存储方式:ContentProvider
新建一个类:LifeDiaryContentProvider(难点)。这里,在代码前面定义程序中需要的一些变量和函数
定义一:日记本中变量定义二:UriMatcher。用来匹配URI的类型,是单一的数据请求还是全部数据请求定义三:DatabaseHelper。DatabaseHelper是继承SQLiteOpenHelper的SQLiteOpenHelper是一个抽象类,有3个函数 onCreate、onUpdate、onOpen(一般不用)定义四:getFormateCreatedDate。一个获取当前时间的函数
辅助类DatabaseHelper
关键是重写 onCreate方法和onUpdate方法
辅助类CotentProvider
日记本的数据还是在存储在SQLite数据库中,当然可以通过SQLite实现增删改查。但是sql语句容易出错,这里,执行增删改查操作不是直接访问数据库,而且通过日记本里面的CotentProvider来实现。
数据库、数据表、数据表中的字段
升级的版本号
DatabaseHelper和SQLiteDatabase事例
Context实例
辅助类BaseColumns
需要定义日记本内数据库的列表字段的名字,并且需要和mannifest结合起来配合定义,新建了一个Fields的类 用于描述需要的字段
当构造列名的辅助类时,直接实现BaseColumns,这就有了默认的_id字段,因为BaseColumns这个接口有个两个变量,一个ID=_id,另外一个是COUNT=_count。在android当中,每个数据库表至少有一个字段,这个字段是id。在android中鼓励开发者使用内部类的,这样不但方法,而且开发效率高。
声明manifest
android:name=DiaryContentProvider实现 content provier的类名
android:authorities=andy.diarycontentprovider 为content URI第二部分,授权部分
辅助类UriMatcher
UriMatcher是匹配Uri的一个辅助类,很方便的判断一个uri的类型UriMatcher类
这个类的主要作用是:判断这个URi是对单个数据的请求还是对全部数据的请求UriMatcher来龙去脉,为什么要用他
一、ContentProvider简介当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据。虽然使用其他方法也可以对外共享数据,但数据访问方式会因数据存储的方式而不同,如:采用文件方式对外共享数据,需要进行文件操作读写数据;采用sharedpreferences共享数据,需要使用sharedpreferences API读写数据。而使用ContentProvider共享数据的好处是统一了数据访问方式。
二、Uri类简介
Uri代表了要操作的数据,Uri主要包含了两部分信息:1.需要操作的ContentProvider ,2.对ContentProvider中的什么数据
您可能关注的文档
- Cacti接入配置指南.doc
- CAD学习课件Chapter1.ppt
- CAEUnit 5 Dear sir or madam.ppt
- caizhi.doc
- CAP 171 FISHERIES PROTECTION ORDINANCE.doc
- CAP 167 DOGS AND CATS ORDINANCE一.doc
- CAP 313H SHIPPING AND PORT CONTROL (FERRY TERMINALS) REGULATIONS一.doc
- CAP 368 ROAD TUNNELS (GOVERNMENT) ORDINANCE一.doc
- cases concerning CISG.ppt
- category management.ppt
最近下载
- 第五单元草原牧歌——《父亲的草原母亲的河》课件2024-2025学年人音版(2024)初中音乐七年级上册.pptx VIP
- (2025秋新版)部编版八年级上册道德与法治《第三课共建网络美好家园》ppt课件.pptx
- NB-T11409-2023水电工程费用构成及概(估)算费用标准.pdf VIP
- 养鸡技术大全技术详略 - 畜牧.docx VIP
- 苏教版六年级上册《科学》全套教学课件(共531页PPT).pptx
- 湘科版2017版小学科学六年级【上册】全册教案详解.pdf VIP
- 宗教事务条例培训.pptx
- 慢性痛风性关节炎伴多发性痛风石一例并文献复习.pdf VIP
- 5.1 认识大数据 课件 粤教版(2019)高中信息技术必修1.pptx VIP
- 23J916-1 住宅排气道(一)图集.pdf VIP
文档评论(0)