版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、移动应用开发技术题目: 基于Android的个人生活助手专业: 学长淘宝店530213班级:学长淘宝店530213学号:学长淘宝店530213姓名:学长淘宝店530213指导教师: 学长淘宝店530213完成日期: 2015年 05月28日1需求分析随着安卓市场的发展,手机软件更新与时俱进,手机的个人助手已不是什么有创意的软 件了,而是一种实用性的软件。基于安卓的个人生活助手,实现事务的管理和收支的管理, 随身随时随带,提供优质的服务。学长淘宝店 5302131.1 用户需求分析由于用户在日常生活中, 忙碌也有时对事务的遗忘, 以及对收支的不明,然而这个安卓 手机日常助手提供了事务管理和收支管
2、理,用户则对日常事务或收支进行记录, 查询等功能,让用户不会因遗忘应做的事务,比如,什么时间预约好客户谈生意,也不会因此造成损失; 对开支的也有明确的记录,对以后生活上的开支规划,提供生活质量。1.2 功能需求分析 学长淘宝店530213根据上面的需求分析,设计安卓生活日常助手。根据以上的想法,设计出助手的功能:1)、事务(查询,新增,删除,修改,提醒);2)、收支(查询,新增,删除,修改);3)、录首;4)、音乐;5)、日历;6)、时钟。2事务管理和收支管理流程分析事务管理流程图收支管理流程图3系统结构设计学长淘宝店5302133.1 系统的总体结构功能模块设计日常助手事 第 查 询李署新喟
3、事 努m除事笄修改争凫提嚣收 支 修 改3.2 系统静态模型设计学长淘宝店530213根据系统需求设计 7个界面类,分别是 MainActivity(主界面类),Affairsmain (事务界面类),Bookmain (收支界面类),Maffairs(事务管理界面类),Mbook (收支管理界面类),Saffairs(事务查询界面类),Sbook (收支查询界面类)确定系统的类后确定类之间的关系:3.3主界面的功能模块设计学长淘宝店5302133.3.1事务界面的功能模块设计 学长淘宝店530213事务列表2015-4-28 10:03回家返回添加事务日期活动说明保存3.3.2收支界面的功能
4、模块设计学长淘宝店530213日期2015-4-28时间10:03活动说明回家修改删除请选择月份输入 “ I .月总收入返回总支出保存查看 查看收入 查看支出 返请选择月份:月清除时间:1月份 总收入:15总支出:20收支差:-5时间:1月份总收入:500总支出:600收支差:-100查看 查看收入 查看支出返回请选择月份:月清除时间:1月份 总收入:15时间:1月份总收入:500查看 查看收入 查看支出 返回请选择月份:月清除时间:1月份总支出:15时间:1月份总支出:5004系统数据库模型设计学长淘宝店5302134.1 E-R 图4.1.1 事务的E-R图:4.1.2收支的E-R图:5功
5、能实现学长淘宝店5302135.1 事务功能实现5.1.1 事务新增代码public void save(View view) if (checkDate()|checkStartTime() return ;StringBuilder result=new StringBuilder();result.append( result.append( result.append( try" " );"-" );date .getText().toString()+ startTime .getText().toString()+ item .getText
6、().toString();if ( this .getIntent().getStringExtra("flag" ).equals( "change" )intindex=getIntent().getExtras().getInt("position" );String line= "" ;StringBuilder sb= new StringBuilder();FileInputStream in=openFileInput("item" );BufferedReader br= ne
7、w BufferedReader( new InputStreamReader(in);for ( int i=0;i<index;i+) sb.append(br.readLine()+ "n" );br.readLine();sb.append(result.toString()+ "n" ); while ( true ) if (line=br.readLine()!= null ) sb.append(line+ "n" );else break ;FileOutputStream out=openFileOutput
8、( "item" , MODE_PRIVAT)E;PrintStream ps= new PrintStream(out);ps.print(sb.toString();ps.close();out.close();Toast. makeText ( this , " 保存完毕!" ,Toast. LENGTH_LON)G.show();Intent intent=getIntent();setResult(0x111,intent);finish();else FileOutputStream out=openFileOutput( "ite
9、mMODE_APPEN);DPrintStream ps= new PrintStream(out);ps.println(result.toString();ps.close();out.close();Toast. makeText ( this , " 保存完毕!" ,Toast. LENGTH_LON)G.show();Intent intent=getIntent();setResult(0x111,intent); finish();catch (Exception e) e.printStackTrace(); public boolean checkDate
10、() if ( date .getText().toString().equals("" )Toast. makeText ( this , " 日期不能为空!" ,Toast. LENGTH_LON)G.show();return false ; return false ; public boolean checkStartTime()if ( startTime .getText().toString().equals("" )Toast. makeText ( this , " 时间不能为空!" ,Toas
11、t. LENGTH_LON)G.show();return true ; return false ;5.1.2 事务查询代码public String splitString(String s)String ss= new String3;int firstIndex=0,secondIndex=0,flag=0;char a=s.toCharArray();for ( int i=0;i<a. length ;i+)if (ai= ' ' )if (flag=0)firstIndex=i;flag=1; else break ;if (ai= '-'
12、) secondIndex=i;ss0=s.substring(0, firstIndex);ss1=s.substring(firstIndex+1, secondIndex);ss2=s.substring(secondIndex+1,s.length();return ss;5.1.3 事务删除代码public void delete(View view)int index=getIntent().getExtras().getInt("position" );String line= "" ;StringBuilder sb= new Strin
13、gBuilder();tryFileInputStream in=openFileInput("item" );BufferedReader br= new BufferedReader( new InputStreamReader(in);for ( int i=0;i<index;i+)sb.append(br.readLine()+ "n" );br.readLine();while ( true )if (line=br.readLine()!= null ) sb.append(line+ "n" );elsebrea
14、k ;FileOutputStream out=openFileOutput( "item" , MODE_PRIVAT)E;PrintStream ps= new PrintStream(out);ps.print(sb.toString();ps.close();out.close();Toast. makeText ( this , " 删除成功!" ,Toast. LENGTH_LON)G.show();Intent intent=getIntent();setResult(0x111,intent);finish();catch (Except
15、ion e)e.printStackTrace();5.1.4 事务修改代码setActivity .setText( "修改 " );title .setText( "事务管理");delete .setVisibility(View. VISIBLE );int index=getIntent().getExtras().getInt("position" );/Toast.makeText(this, ""+index,Toast.LENGTH_LONG).show(); FileInputStream in
16、;String line= "" ;try in = openFileInput( "item" );BufferedReader br= new BufferedReader( new InputStreamReader(in);for ( int i=0;i<=index;i+) line=br.readLine();/Toast.makeText(this, line,Toast.LENGTH_LONG).show();String s=splitString(line);date .setText(s0);startTime .setTex
17、t(s1);item .setText(s2); catch (Exception e) / TODOAuto-generated catch block e.printStackTrace();5.2 收支功能实现5.2.1 收支新增代码save.setOnClickListener(new View.OnClickListener() Overridepublic void onClick(View view) / TODOAuto-generated method stubString t=time.getText().toString();String i=income.getText
18、().toString();String o=outcome.getText().toString();db.execSQL( "insert into shouru values(?,?,?)",new Stringt,i,o);Toast. makeText (Mbook. this ," 保 存 成 功Toast. LENGTH_SHOR).Tshow();5.2.2 收支查询代码read.setOnClickListener(new View.OnClickListener() Overridepublic void onClick(View view)
19、/ TODOAuto-generated method stub list.setText( "" );Cursor cursor= db.rawQuery( "select*from shouru" null );while ( true )if (cursor.moveToNext()= false )break ;String t=cursor.getString(0);int i=cursor.getInt(1);int o=cursor.getInt(2);int a=i-o;String tmp=list.getText().toString
20、();list.setText(tmp+ "n" +" 时间 :" +t+ " 月份 "+总收入 :" +i+ " "+" 总支出 :" +o+" "+"收支差 :" +a); );read1.setOnClickListener( new View.OnClickListener() Overridepublic void onClick(View view) / TODOAuto-generated method stublist.setTe
21、xt( "" );Cursor cursor= db.rawQuery( "select*from shouru" null );while ( true )if (cursor.moveToNext()= false ) break ;String t=cursor.getString(0);int i=cursor.getInt(1);String tmp=list.getText().toString();list.setText(tmp+ "n" +" 时间 :" +t+ " 月份 "+
22、总收入 :" +i););read2.setOnClickListener( new View.OnClickListener() Overridepublic void onClick(View view) / TODOAuto-generated method stublist.setText( "" );Cursor cursor= db.rawQuery( "select*from shouru" , null ); while ( true )if (cursor.moveToNext()= false ) break ;String t=cursor.getString(0);int 。=cursor.getlnt(l);String tmp=list.getText().toString();list.setText(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年《网络与信息安全管理员》模拟试题及答案
- 江西省宜春市丰城市第九中学2026-2027学年高二上学期(日新班)10月阶段性检测语文试卷(含答案)
- 2027届黑龙江省大兴安岭中考二模物理试题含解析
- 2027届浙江省台州仙居重点达标名校中考猜题物理试卷含解析
- 2026年媒体素养模拟试卷及答案
- 2026年杨凌驾驶证科目一模拟试卷带答案
- 2026年汽车动力模拟试卷及参考答案
- 2026年水库闸门考试题库及答案
- 2026年客运外检模拟试卷带答案
- 2026年护士药学模拟试卷(含答案)
- GB/Z 270-2026安全与韧性业务连续性管理体系业务连续性策略指南
- 2026年医疗废物分类及处理培训考试试题(附答案)
- GB/T 48315-2026鲁班工坊运行质量评估指南
- 2025年荆州市文旅集团公开招聘10名工作人员笔试参考题库附带答案详解
- 2026年初中物理教师能力测试卷
- 女性权益保障课件
- 2025国家药品监督管理局药品审评中心招聘笔试历年题及答案
- 2025课堂惩罚 主题班会:马达加斯加企鹅课堂惩罚 课件
- 追寻合唱简谱国家大剧院
- 坡度变化条件下的车辆质量与道路参数联合估计算法
- 装饰工程计算培训
评论
0/150
提交评论