移动应用开发技术的课程设计_第1页
移动应用开发技术的课程设计_第2页
移动应用开发技术的课程设计_第3页
移动应用开发技术的课程设计_第4页
移动应用开发技术的课程设计_第5页
已阅读5页,还剩16页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论