河南城建学院课程设计报告书专业:计算机科学与技术课程设计名称:《Java高级应用》题目:基于Android平台的记事本软件班级:0814131班学号:081413107设计者:付明玉同组人员:李志军、翟帅星指导老师:张妍琰景伟娜陈红军完成时间:2016年06月04一、设计目的...........................................................................................................................21.1设计目的.............................................................................................................................21.2设计要求.............................................................................................................................2二、需求分析...........................................................................................................................22.1需求分析.............................................................................................................................22.2软件逻辑.............................................................................................................................32.2.1软件逻辑图..............................................................................................................32.2.2功能模块图..............................................................................................................42.3数据存储实现....................................................................................................................5三、模块分析及设计...............................................................................................................63.1首页面.................................................................................................................................63.2主菜单.................................................................................................................................73.3查看模块............................................................................................................................83.4添加记录...........................................................................................................................103.5垃圾箱..............................................................................................................................103.6设置页面..........................................................................................................................113.7日历页面..........................................................................................................................12四、制作过程及要点.............................................................................................................12五、设计总结.........................................................................................................................13六、参考资料.........................................................................................................................15一、设计目的1.1设计目的《Java高级应用》课程设计是我们实践性学习环节之一,通过课程设计:(1)、巩固本学期所学的理论知识,熟悉androidstutio工具及相关java组件的灵活应用。(2)、编制出完整的应用程序,锻炼我们的分析解决实际问题的能力,为以后完成大型项目的开发打下基础。(3)、把理论与实验课所学内容做一个综合,并在此基础上强化我们的实践意识、提高实际动手能力和创新能力。1.2设计要求设计一款基于Android平台的记事本软件。功能要求:具有记事本的基本功能,可以实现记录,批量处理。具备在线备份和分享功能。在线备份能备份各种编辑中或者编辑完成的文章。二、需求分析2.1需求分析(1)用户进入系统后可以设置个人信息:设置页面颜色、姓名、电话、及锁定密码,设置标记;(2)查看记录:查看以前的记录;(3)添加记录:添加新的记录;(4)删除记录:删除已有的记录;(5)垃圾箱:删除的信息会被放到垃圾箱里,并可以进行还原操作,若确定是没有信息,则可以清空垃圾箱,实现批量删除;(6)日历:可以显示当前日期,与手机时间,会根据信息修改的时间,自动改变信息记录时间;而且可以再日历中的某一天添加标记信息;(7)排序:可以对信息进行排序(按时间、字母表、颜色)(8)视图:在代码中添加了listView和gridView两种显示视图,用户可以自由选择;(9)简介:对软件和开发的简单介绍2.2软件逻辑2.2.1软件逻辑图开始主页面记录信息编辑信息显示信息设置页面显示日期页面垃圾箱页面添加信息删除信息修改信息保存信息图2-12.2.2功能模块图软件功能模块图如图2-2所示图2-2-1图2-2-2图2-2-3记事模块查看记录记录事情从记录信息中查看垃圾箱查看从添加信息中记录删除模块从保存信息中删除从垃圾箱中删除批量删除个人姓名个人设置模块主题颜色锁定密码标记排序视图照片简介图2-2-42.3数据存储实现依据系统功能设计的要求及功能模块的划分,对数据库进行了设计。本系统主要涉及到记事本信息的存储表notes,如表2-1所示。数据库中表notes信息列名对应变量数据类型属性功能说明_idCOLUMN_IDString主键titleCOLUMN_TITLETextNotnull信息标题colorCOLUMN_COLORintegerNotnull主题颜色modified_timeCOLUMN_MODIFIED_TIMEintegerNotnull修改时间reminder_jsonCOLUMN_REMINDERText设置提醒lockedCOLUMN_LOCKEDIntegerDefault0锁定状态checkedCOLUMN_CHECKEDIntegerDefault0设置标记trashedCOLUMN_TRASHEDintegerDefault0垃圾箱日历模块显示日期标记事件调整日期deleted_timeCOLUMN_DELETED_TIMEintegerDefault0calendar_dayCOLUMN_CALENDAR_DAYintegerDefault-1日历日期(日)calendar_monthCOLUMN_CALENDAR_MONTHintegerDefault-1日历日期(月)calendar_yearCOLUMN_CALENDAR_YEARintegerDefault-1日历日期(年)三、模块分析及设计3.1首页面进入页面的效果如图3-1所示图3-1-1在系统主页面,我们采用了简单明了的方式直观向用户展示了这个软件的用途,直接点击就可以记录事件,在这个页面我们添加了:setupActionBar();setupNavigationDrawer();由actionbar实现左滑动菜单;此外,在Activity中使用了Fragment,可以使设计适用于不同的手机屏幕大小,提供更加灵活的UI支持。通过对Activity布局进行分片,更加方便的对每块进行独立控制。3.2主菜单首页面左滑动菜单即为系统主菜单,采用了drawerlayout布局,里面包含了线性布局、相对布局,和FrameLayout布局,用listViw在菜单中显示各个功能的小图标,图标包含TextView和CircularImageView,显示效果如图所示:图3-2-1添加代码激活actionBar按钮,使它能够滑动,使用了方法setupActionBar(),并且在菜单中的每项都增加了点击滑动页面,点击后可以进行相应操作。3.3查看模块该页面可以查看之前添加过的记录,删除,显示方式(listviw,gridviw),设置提醒时间(remindr),进行标记(check),锁定(locked),设置信息的排序方式(按时间顺序,按颜色,按字母表)当长按某条信息时就会出现这个上下文菜单,来对记录进行一些设置,具体显示效果如图所示:图3-3-1在这一模块定义了方法OnLongClickNoteListener来实现长按出现上下文菜单功能,在布局中设置了上下文菜单中每项的含义,在类文件中进行定义Option方法实现它的菜单项功能。在主页面点击Android图标时会出现对话框,来设置记录的显示方式,效果如图3-3-2所示:图3-3-2下面是ListView类型的显示方式如图3-3-3所示:图3-3-3图3-3-4也可以在设置页面对记录显示方式设置一个默认的显示方式,如果不特别调整,则按默认方式显示。GridView类型的