湖南科技大学智能终端系统开发及应用课程设计报告.docx

上传人:b****5 文档编号:12216186 上传时间:2023-04-17 格式:DOCX 页数:15 大小:327.85KB
下载 相关 举报
湖南科技大学智能终端系统开发及应用课程设计报告.docx_第1页
第1页 / 共15页
湖南科技大学智能终端系统开发及应用课程设计报告.docx_第2页
第2页 / 共15页
湖南科技大学智能终端系统开发及应用课程设计报告.docx_第3页
第3页 / 共15页
湖南科技大学智能终端系统开发及应用课程设计报告.docx_第4页
第4页 / 共15页
湖南科技大学智能终端系统开发及应用课程设计报告.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

湖南科技大学智能终端系统开发及应用课程设计报告.docx

《湖南科技大学智能终端系统开发及应用课程设计报告.docx》由会员分享,可在线阅读,更多相关《湖南科技大学智能终端系统开发及应用课程设计报告.docx(15页珍藏版)》请在冰豆网上搜索。

湖南科技大学智能终端系统开发及应用课程设计报告.docx

湖南科技大学智能终端系统开发及应用课程设计报告

 

智能终端系统及应用开发

课程设计报告

 

题目:

个人理财小助手

 

学号:

班级:

姓名:

指导老师:

 

一、题目:

个人理财小助手

(1)目的与要求

1.掌握SQLite数据库及其使用。

2.纯熟掌握布局及常用控件Button、ListView、EditText、TextView等。

〔2〕功能需求

个人理财小助手主要为用户提供5个主要模块,包括:

登录模块、收入管理模块、支出管理模块、便签管理模块、系统设置模块。

对日常的开支进展随时记录,存储到本机的SQLite数据库。

1.使用SQLite数据库实现增加、删除、修改;

2.使用ListView进展显示;

3.增加私密性,验证成功才能进展收支管理;

4.能提供简单的收支统计〔按月、按周〕功能;

5.提供数据管理,能对数据进展导出〔如将收入/支出明细导出为txt或Excel文档〕。

二、工作日志

12月15日

(1)搭建android开发环境。

下载版本6.0以上的JDK并安装。

配置环境变量:

安装JDK以后,假设需要在cmd下使用Java命令和编译、运行程序,可以配置环境变量:

新建环境变量JAVA_HOME,右击“我的电脑〞—>“属性〞—>“高级〞—>“环境变量〞。

下载adt-bundle-windows-x86-20210917,解压缩即可,进入eclipse文件夹,运

行eclipse.exe。

(2)创立HelloWorld程序,并在模拟器上运行,如以下图所示。

(3)确定开发题目——个人理财小助手。

个人理财小助手主要为用户提供5个主要模块,包括:

登录模块、收入管理模块、支出管理模块、便签管理模块、系统设置模块。

对日常的开支进展随时记录,存储到本机的SQLite数据库。

开始设计第一个布局——登录布局,上网查找所需图片。

12月16日

(1)改进了昨天做的登录界面,在之前的根底上参加一张图片和一个按钮,如以下图所示。

先将网上下载的图片复制到res/drawable下,再利用ImageView添加图片。

登录界面整体采用相对布局,TextView和EditText之间使用线性布局。

(2)设计了菜单界面的布局。

菜单界面整体采用相对布局,界面上有8个按钮,每一行的按钮采用线性布局。

赋给每个线性布局一个id,再用android:

layout_below=〞@+id/线性布局id将这3个线性布局分开。

将下载好的图片利用android:

background=〞@drawable/图片名字〞作为按钮的背景。

利用android:

background=〞#e7e7e7e7”改变背景颜色。

(3)设计了保存密码界面的布局,布局与登录界面的布局差不多,但背景颜色为android:

background=〞#e7e7e7e7〞,如以下图所示。

(4)设计了新增收入界面和新增支出界面的布局,界面整体使用相对布局,界面上有5个TextView和5个EditText以及2个按钮,每行中的TextView和EditText采用线性布局,赋给每个线性布局id,用android:

layout_below=〞@+id/线性布局id分开每个线性布局。

整体背风光为android:

background=〞#e7e7e7e7”,EditText背风光为android:

background=〞ffffff〞。

如以下图所示。

12月17日

(1)用ListView完成我的收入和我的支出界面的布局设计。

我的收入和我的支出界面一样,整体采用线性布局,在线性布局中添加ListView控件。

ListView是一个列表视图,由很多Item〔条目〕组成,每个Item的布局都是一样的。

创立好ListView界面之后接下来需要创立ListView的条目,在res目录下创立一个item.xml文件,指定Item的布局。

Item的布局整体采用相对布局,其上有五个TextView,第一个TextView内容为“我的收入〞;后四个TextView使用线性布局,第二个TextView内容为序号,权重weight设为1;第三个TextView内容为收入的名字,权重weight设为2;第四个TextView内容为金额,权重weight设为3;第五个TextView内容为日期,权重weight设为3。

如以下图所示。

(2)完成新增便签界面的布局设计。

界面整体采用相对布局,布局中有两个TextView,一个EditText和两个按钮,第二个TextView内容为“请输入便签,最多输入200字〞,颜色用〞#900000”设为红色,与EditText组成线性布局,将线性布局的一个属性android:

orientation设为vertical〔垂直〕,使其垂直显示。

EditText颜色设为白色,textSize为150dp。

整体背景仍然设为〞#e7e7e7”。

如以下图所示。

12月18日

(1)完成“设置密码〞按钮的代码编写,使其从FinancialMenagerActivity跳转到PasswordActivity。

在布局文件中为按钮“设置密码〞设置onClick属性指定点击方法名android:

onClick="click"。

(2)编写“保存〞按钮和“取消〞按钮的代码。

创立一个内部类实现OnClickListener接口并重写onClick〔〕方法,在方法中写入点击事件的逻辑。

这里比较重要的一点,要为按钮设置点击事件前要先获取到该控件的引用,需要在布局文件中为按钮“保存〞设置id,android:

id="@+id/zc_button1"

12月21日

(4)修改代码过程中,不知道什么原因导致布局也无法显示。

再次修改时,不小心activity.java文件,所幸布局文件还能用。

重新建立工程,重新命名工程为FM,applicationname为理财猫,将布局文件和图片复制进去。

并且出于有Back建的考虑,我将保存密码布局、新增收入布局、新增支出布局和新增便签布局中的“取消〞按钮全部删除,以减少工作量。

(5)编写“设置密码〞按钮的代码,以实现登录界面和保存密码界面的跳转。

(6)编写“保存〞

(7)完成“登录〞按钮的代码编写,以实现从登录界面跳转到菜单界面。

假设密码输入错误,那么会弹出“密码错误〞;密码正确才能登录。

在编写按钮的代码过程中,我在布局文件activity_fm.xml布局文件中为button1定义了onClick属性,它的作用就是为按钮设置点击事件,以onClick属性的值为方法名创立了一个方法,在参数中传人View对象。

我还使用直接创立OnClickListener的匿名内部类的方法实现按钮。

12月22日

(1)编写菜单界面上7个按钮的代码,以实现从菜单跳转到新增收入、收入、便签等各个界面。

在主类中实现OnClickListener借口,然后重写onClick()方法,并通过switch语句判断是哪个按钮被点击,然后执行相应操作,部分代码如下:

其中启动下一个activity时,我使用的是显示意图。

显示意图,即在通过Intent启动Activity时,需要明确指定激活组件的名称。

(2)

(3)

12月23日

(1)

 

(2)完成编写界面与数据库进展交互的代码,用于实现将数据库中的数据以ListView的形式展示在界面上。

ListView的setOnItemClicListener():

该方法用于监听Item的点击事件,在使用该方法时需要传入一个OnItemClickListener的实现类对象,并且需要实现onItemClick方法。

当点击ListView的Item时就会触发Item的点击事件然后会回调onItemClick()方法。

Adapter的notifyDataChange()方法:

该方法是用于重新适配数据,当需要适配的数据内容发生变化时,可以调用此方法重新适配数据,会重新执行BaseAdapter中gerView()的方法。

(3)编写了与新增收入类似的新增支出模块的代码,但点击保存按钮时,并没有保存数据,原因还未找到。

12月24日

(1)完成了新增支出模块的编写,实现了能将新增支出保存到数据库的功能,并能对保存的新增支出进展查询、删除操作。

(2)我原先的登录时,比对的是代码中的固定密码,而且设置的密码是以文件的形式保存的,但不能调出比对。

我将它改成将密码保存在数据库中,并能调出比对。

我在主要的数据库中使用SQLiteDatabase的insert()、update()、delete()、query()方法实现增、删、改、查的功能,而在登录模块的数据库中我是用exeSQL()和rawQuety()方法来实现增、删、改、查的功能。

(3)完成了便签模块中将便签保存到数据库中的代码编写。

(4)补了一个数据管理的布局。

布局整体采用线性布局,使用了ListView控件。

三、遇到的问题及解决方法

(1)ThemethodsetOnClickListener(View.OnClickListener)inthetypeViewisnotapplicableforthearguments(Menu),原因是publicclassMenuextendsActivity没有implementsOnClickListener,加上即可。

(2)Multiplemarkersatthisline

-Thevalueofthelocalvariablebutton1isnotused

-Syntaxerror,insert"}"tocompleteMethodBody

一个花括号}位置放错了,导致publicvoidclick1包含在protectedvoidonCreate中,只需将}放在正确位置即可。

(3)在新增收入、收入、便签等界面按Back键后,直接跳转到登录界面,应跳转到上一界面才对。

原因是我在每个case中break前加了finish(),删去即可。

(4)运行app后,出现invalidresourcedirectoryname,在res文件下生成一个crunch文件导致运行出错。

原因可能是我用两个android版本去编程,将这个文件删除即可。

(5)设计菜单界面布局时,添加图片为按钮的背景后,图片互相重叠。

需要去挑战图片的height和width,我将二者设为75dp就解决了这个问题。

还出现了按钮有的能单独点击,有的不能的问题。

这是由于线性布局互相重叠,只需给每个线性布局一个id,再利用android:

layout_below将布局分开。

四、经历总结

首先,编程过程中一定要非常认真仔细,任何一点过失都会使程序出错。

比方一符号打成中文字符也会报错,再比方一个字母打错也不行。

其次,我从这次课程设计中学到了很多。

熟悉了相对布局和线性布局,掌握了Intent显示意图和隐式意图的使用。

进一步理解了activity的生命周期,懂得了将数据以文件的形式保存下来。

对SQL数据库有了进一步的认识,学会了使用SQLiteDatabase的insert()、delete()、update()、query()以及execSQL()、rawQuery()方法对数据库进展增、删、改、查的操作。

还学会了ListView控件的使用。

最后,开发app不仅需要android编程方面的知识,还需要数据库等其他方面的知识。

所以平时要重视知识的积累,而且需要大量的动手理论,以培养软件开发的综合应用才能。

 

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

当前位置:首页 > PPT模板 > 可爱清新

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1