移动应用开发技术的课程设计讲解.docx

上传人:罗晋 文档编号:11751856 上传时间:2021-09-03 格式:DOCX 页数:20 大小:186.22KB
返回 下载 相关 举报
移动应用开发技术的课程设计讲解.docx_第1页
第1页 / 共20页
移动应用开发技术的课程设计讲解.docx_第2页
第2页 / 共20页
移动应用开发技术的课程设计讲解.docx_第3页
第3页 / 共20页
移动应用开发技术的课程设计讲解.docx_第4页
第4页 / 共20页
移动应用开发技术的课程设计讲解.docx_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《移动应用开发技术的课程设计讲解.docx》由会员分享,可在线阅读,更多相关《移动应用开发技术的课程设计讲解.docx(20页珍藏版)》请在三一文库上搜索。

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().toString();if ( this .

6、getIntent().getStringExtra(flag ).equals( change )intindex=getIntent().getExtras().getInt(position );String line= ;StringBuilder sb= new StringBuilder();FileInputStream in=openFileInput(item );BufferedReader br= new BufferedReader( new InputStreamReader(in);for ( int i=0;iindex;i+) sb.append(br.read

7、Line()+ n );br.readLine();sb.append(result.toString()+ n ); while ( true ) if (line=br.readLine()!= null ) sb.append(line+ n );else break ;FileOutputStream out=openFileOutput( item , MODE_PRIVAT)E;PrintStream ps= new PrintStream(out);ps.print(sb.toString();ps.close();out.close();Toast. makeText ( th

8、is , 保存完毕! ,Toast. LENGTH_LON)G.show();Intent intent=getIntent();setResult(0x111,intent);finish();else FileOutputStream out=openFileOutput( itemMODE_APPEN);DPrintStream ps= new PrintStream(out);ps.println(result.toString();ps.close();out.close();Toast. makeText ( this , 保存完毕! ,Toast. LENGTH_LON)G.sh

9、ow();Intent intent=getIntent();setResult(0x111,intent); finish();catch (Exception e) e.printStackTrace(); public boolean checkDate() if ( date .getText().toString().equals( )Toast. makeText ( this , 日期不能为空! , Toast. LENGTH_LON)G.show();return false ; return false ; public boolean checkStartTime()if

10、( startTime .getText().toString().equals( )Toast. makeText ( this , 时间不能为空! , Toast. 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;ia. length ;i+)if (ai=

11、 )if (flag=0)firstIndex=i;flag=1; else break ;if (ai= - )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(positionString line=

12、;StringBuilder sb= new StringBuilder();tryFileInputStream in=openFileInput(item );BufferedReader br= new BufferedReader( new InputStreamReader(in);for ( int i=0;iindex;i+)sb.append(br.readLine()+n );br.readLine();while ( true )if (line=br.readLine()!= null ) sb.append(line+ n );elsebreak ;FileOutput

13、Stream 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 (Exception e)e.printStackTrace();5.1.4 事务修改代码

14、setActivity .setText(修改 );title .setText( 事务管理 );delete .setVisibility(View. VISIBLE );int index=getIntent().getExtras().getInt(position );/Toast.makeText(this, +index,Toast.LENGTH_LONG).show(); FileInputStream in;String line= ;try in = openFileInput( item );BufferedReader br= new BufferedReader( ne

15、w 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 .setText(s1);item .setText(s2); catch (Exception e) / TODOAuto-generated catch block e.printStackTrace();5.2 收支功能实现5.2.1 收支

16、新增代码save.setOnClickListener(new View.OnClickListener() Overridepublic void onClick(View view) / TODOAuto-generated method stubString t=time.getText().toString();String i=income.getText().toString();String o=outcome.getText().toString();db.execSQL( insert into shouru values(?,?,?),new Stringt,i,o);To

17、ast. makeText (Mbook. this , 保 存 成 功Toast. LENGTH_SHOR).Tshow();5.2.2 收支查询代码read.setOnClickListener(new View.OnClickListener() Overridepublic void onClick(View view) / TODOAuto-generated method stub list.setText( );Cursor cursor= db.rawQuery( select*from shouru null );while ( true )if (cursor.moveTo

18、Next()= 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();list.setText(tmp+ n + 时间 : +t+ 月份 +总收入 : +i+ + 总支出 : +o+ +收支差 : +a); );read1.setOnClickListener( new View.OnClickListener() Overridepublic void onClick(View

19、 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 i=cursor.getInt(1);String tmp=list.getText().toString();list.setText(tmp+ n + 时间 : +t+ 月份 +总收入 : +i););r

20、ead2.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)

21、;String tmp=list.getText().toString();list.setText(tmp+ n +时间:+t+月份 +总支出:+o););read3.setOnClickListener( new View.OnClickListener() Overridepublic void onClick(View view) / TODOAuto-generated method stubIntent intent = new Intent();intent.setClass(Sbook. this , Bookmain. class ); startActivity(inten

22、t););5.2.3 收支删除代码thing2.setOnClickListener( new View.OnClickListener() Overridepublic void onClick(View arg0) / TODOAuto-generated method stubString aa=thing.getText().toString();db.execSQL( delete from shouru where time=?”, newStringaa);Toast. makeText (Sbook. this ,清除成功,Toast. LENGTH_SHOR:show(); finish();5.2.4 收支修改代码6总结学长淘宝店530213本软件还存在几个模块的功能需改进,比如在输入值的判断方面,等等;同时对安卓的一些基本内容的整体上的应用, 往后在设计当中还需努力与严密性的考虑,也是为以后从事软件上测试方面减少维护与修改。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1