第一篇:ANDROID实训心得
android实习心得
刚开始接触android感觉到它很有意思,在界面开发上和web也可以形成了相通的架构,更加方便,视觉上也是非常的酷,在前期我通过的大量的android sdk开发范例大全中的例子以及android提供的apidemos进行学习,尽管例子之间的连接比较零散,不过通过这些例子的学习我可以学习到了很多和以前java上相通的思想。
我在为期半个月的实习中学到了很多在课堂上根本就学不到的知识,收益非浅.现在我对这半个月的实习做一个工作小结。
1通过半个月的android实习,基本掌握了android应用程序开发的一般流程。对常用控件基本掌握其用法,对其事件的监听方法也基本掌握。学习android不仅是对前沿开发技术的了解,也是对编程知识的一次提升。2通过学习android的控件、布局、activity、service等一系列基础知识,对整个android的开发有了大致的了解。例如: 要的布局(或者控件),在学习界面中,我发现android为我们提供了很好的类似反射机制,通过layout文件夹下的配置文件,可以快速的形成界面,在配置文件可以设置属性或者样式都是很快捷方便。对比较特殊的界面也可以通过处理嵌入到指定的界面,同样你可以通过java代码直接创建view进行添加,不过这种方式比较复杂。对一些点击、选中、按键等处理的事件,界面之间的跳转intent管理,通过bundle对数据在界面之间进行传输。
4在手机交互式通信服务中,学习了android手机之间进行短信发送、广播、对广播的监听、服务等,在service类中没有context,可以通过handler来每秒反复运行,自动送出系统广播信息,同时在这里我们也知道可以设计一个常用的变量类,设计一个当前的currentactivity这个变量进行控制,进行处理。
在android编程过程中巩固熟悉了java的编程。由于android应用程序的开发离不开java的支持,所以基础的java知识是必须的。android系统是基于linux的手机操作系统平台,要深入系统的学习android,不仅仅是有java和android应用开发,必须要具备linux,c/c++高级编程才能深入的涉及android framework和android内核开发。成为android开发的高素质人才。所以,在后续对android的学习中可能会看一些较底层的书籍。
通过android的实习,我们在大四毕业前,我们又掌握了一项新的前沿的开发技能,也有了更多的发展方向,这在以后的找工作的过程中无疑为我们增加了砝码,也可以成为我们的一项兴趣爱好,可以根据我们自己的需要设计一些小的程序。总之,在这次实习中,我获得了很多东西,提高了自己的编程技巧和编程方法,并且认识了android应用程序的开发,以及加深了对java的认识。
最后,通过实习,我收获了很多东西,特别是编程方面的,这对即将毕业的我们来说,这次实习是一次较为珍贵的充电,篇二:android实训心得
项目总结
时间过的好快,为期三个月的实训生活即将结束了,每一次的实训我们都受益匪浅,我们学到的不仅仅是课内还有课外,实训让我们的课内知识得到了巩固,专业知识、编程水平都有很大的提高,我们非常感谢这次实训。
刚开始二周的高强度的课程安排让我们受益匪浅;接下来的项目实训又让我们可以巩固了课程。这让我觉得实习生活充实而有意义。
乐淘购物项目和android优化大师,我更好的学习了ui的设计,如何使界面漂亮,美观,巩固了listview,gridview,的使用,学会了动画进入界面的,和会移动的画廊等等。在这两个项目中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心由然而生,这就是工作的乐趣。有时候也需要虚心请教,从别人的身上真得能学习到不自己没有的东西,每一次的挫折只能使我更接近成功。音乐播放器项目,我们是七个人组成小组完成的,由组长带领我们,分配任务,每个人,都发挥自己的长处,更好地去完成任务。对于团队开发来说,团结一致使我深有体会。团队的合作注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具体实践中,不仅加深我对理论的掌握和
运用,还让我拥有了一次又一次难忘的开发经历,这是也是实训最大的收获。
这次实训对于我以后学习、找工作也真是受益菲浅,在这3个月中让我初步从理性回到感性的重新认识,也让我初步的认识这个社会,对于以后做人所应把握的方向也有所启发!相信这些宝贵的经验会成为我今后成功的重要的基石。在此,我非常感谢指导老师和同学对我的帮助。篇三:android实训心得 android实训心得
刚开始接触android感觉到它很有意思,在界面开发上和web也可以形成了相通的架构,更加方便,视觉上也是非常的酷,在前期我通过的大量的android sdk开发范例大全中的例子以及android提供的apidemos进行学习,尽管例子之间的连接比较零散,不过通过这些例子的学习我可以学习到了很多和以前java上相通的思想。
我在为期半个月的实习中学到了很多在课堂上根本就学不到的知识,收益非浅.现在我对这半个月的实习做一个工作小结。
通过半个月的android实习,基本掌握了android应用程序开发的一般流程。对常用控件基本掌握其用法,对其事件的监听方法也基本掌握。学习android不仅是对前沿开发技术的了解,也是对编程知识的一次提升。
通过学习android的控件、布局、activity、service等一系列基础知识,对整个android的开发有了大致的了解。例如 要的布局(或者控件),在学习界面中,我发现android为我们提供了很好的类似反射机制,通过layout文件夹下的配置文件,可以快速的形成界面,在配置文件可以设置属性或者样式都是很快捷方便。对比较特殊的界面也可以通过处理嵌入到指定的界面,同样你可以通过java代码直接创建view进行添加,不过这种方式比较复杂。对一些点击、选中、按键等处理的事件,界面之间的跳转intent管理,通过bundle对数据在界面之间进行传输。
在手机交互式通信服务中,学习了android手机之间进行短信发送、广播、对广播的监听、服务等,在service类中没有context,可以通过handler来每秒反复运行,自动送出系统广播信息,同时在这里我们也知道可以设计一个常用的变量类,设计一个当前的currentactivity这个变量进行控制,进行处理。
在android编程过程中巩固熟悉了java的编程。由于android应用程序的开发离不开java的支持,所以基础的java知识是必须的。android系统是基于linux的手机操作系统平台,要深入系统的学习android,不仅仅是有java和android应用开发,必须要具备linux,cc++高级编程才能深入的涉及android framework和android内核开发。成为android开发的高素质人才。所以,在后续对android的学习中可能会看一些较底层的书籍。
由于这次实习时间较短,对于android应用程序的高级编程讲的很少,是这次实习中的不足。要想开发一些好的应用程序,还需要更多的知识支持。在做实习最后的项目时,遇到了很多平时没有遇到或者没有特别关注的问题,如常见的activity忘记注册,对sd卡存取需要权限,在写sql语句时细微的错误就可能导致程序运行错误。这些问题只有自己在实际开发中才能体会到并且解决,并且在解决后可以长时间的记住。
通过android的实习,我们在大四毕业前,我们又掌握了一项新的前沿的开发技能,也有了更多的发展方向,这在以后的找工作的过程中无疑为我们增加了砝码,也可以成为我们的一项兴趣爱好,可以根据我们自己的需要设计一些小的程序。总之,在这次实习中,我获得了很多东西,提高了自己的编程技巧和编程方法,并且认识了android应用程序的开发,以及加深了对java的认识。
第二篇:android实训心得(推荐)
项目总结
时间过的好快,为期三个月的实训生活即将结束了,每一次的实训我们都受益匪浅,我们学到的不仅仅是课内还有课外,实训让我们的课内知识得到了巩固,专业知识、编程水平都有很大的提高,我们非常感谢这次实训。
刚开始二周的高强度的课程安排让我们受益匪浅;接下来的项目实训又让我们可以巩固了课程。这让我觉得实习生活充实而有意义。
乐淘购物项目和android优化大师,我更好的学习了UI的设计,如何使界面漂亮,美观,巩固了listview,gridview,的使用,学会了动画进入界面的,和会移动的画廊等等。在这两个项目中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心由然而生,这就是工作的乐趣。有时候也需要虚心请教,从别人的身上真得能学习到不自己没有的东西,每一次的挫折只能使我更接近成功。
音乐播放器项目,我们是七个人组成小组完成的,由组长带领我们,分配任务,每个人,都发挥自己的长处,更好地去完成任务。对于团队开发来说,团结一致使我深有体会。团队的合作注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具体实践中,不仅加深我对理论的掌握和运用,还让我拥有了一次又一次难忘的开发经历,这是也是实训最大的收获。
这次实训对于我以后学习、找工作也真是受益菲浅,在这3个月中让我初步从理性回到感性的重新认识,也让我初步的认识这个社会,对于以后做人所应把握的方向也有所启发!相信这些宝贵的经验会成为我今后成功的重要的基石。
在此,我非常感谢指导老师和同学对我的帮助。
第三篇:Android实训报告
時間過得飛快,一週的實訓馬上就要結束了。在這次實訓中我不僅學習了相關的專業知識,而且讓我對Android系統有了一個更加深入的瞭解,它也是我們專業的一個新的方向並且发展很迅速,為了今後的发展我們還需不断努力學習!我國的信息產業還很落後,隨著社會的發展及國家的支持,手機上網必然是社會發展的趨勢,到時候手機上網將無處不在!我對Android系統的瞭解只停留在應用的層次上,對於更深層次的瞭解是很少的,通过這次實訓讓我對Android系統有了一個更深層次的瞭解,同時它也使我意識到無論朝哪個方向發展,主要還是得扎實、深刻的學習,同時也得不斷努力探索。
IT業的發展速度一直都是相當驚人的,不想被社會淘汰,我們就必須不斷的學習,現在的社會不再是一勞永逸,其它行業也是如此,我们必須不斷的拿知識來武装自己,不然被淘汰那是肯定的!現在就業難的原因其實在於競爭的加剧,為了在競爭中取得成功,我們必須時時刻刻刻學習!
在Android編程過程中巩固熟悉了Java的編程。由於Android應用程序的開發離不開Java的支持,所以基礎的Java知識是必須的。Android系统是基於Linux的手機操作系統平臺,要深入學習Android,不僅僅是有Java和Android應用開發,必須要具備Linux,C/C++高級編程才能深入的涉及Android Framework和Android内核開發。成為Android開發的高素質人才。所以,在後續對Android的學習中可能会看一些較底層的書籍。
由於這次實訓時間較短,對於Android應用程序的高级编程學的很少,是這次實訓中的不足。要想開發一些好的應用程序,還需要更多的知識支持。在實訓時,遇到了很多平時沒有遇到或者沒有特别關注的問題。這些問題只有自己在實際開發中才能體會到並且解决。
通过對java以及Android的學習,讓我又學會了一門編程語言,這對於我以後的學習工作都會有很大的帮助。回顧以前所走的路,太多的是無奈和迷茫,這次实训就像是我人生道路上的航標,為我指明了前進的方向,使我對自己的前途充满了信心,同時也知道了自己的前進方向。
第四篇:Android 实训总结
Android实训总结
——XXXX 三周的Android 实训,已接近尾声。在这短暂的三周之内,有成功、有失败;有喜悦、有辛酸。在实训老师的带领下,我学会了很多。我们小组在实训老师的协助下最终成功的完成实训项目。
实训前二周,由于我在java基础方面的知识比较薄弱,学习重点放在了java基础学习上,兼顾android学习。Java基础学习: 内容:
(1)1.bean-实体类分析。2.功能分析。3.语义模型、关系模型、界面模型、流程图。4.代码分析、DAO接口实现。
(2)完成老师每日给的java 基础作业,达到复习的目的。每日老师给的练习都有针对性,认真的完成练习,很好的达到了复习java基础的目的。成果: 能针对一个简单 java 或Android 项目,(1)分析出对象、实体类,元数据(2)功能分析 并画出对应的功能界面
(3)数据库分析: 作出语义模型、关系模型、界面模型、流程图(4)进行代码分析,并实现DAO。
独立完成本次项目的代码框架、DAO接口以及DAO实现.Java基础作业
Android学习: 内容:
(1).以新闻客服端为例,讲解了android开发的一个典型流程。
(2).android 如何调试 如何使用log类inf(i)、debug(d)、error---logcat
(3).android需要整个应用范围访问某类数据(session--user)
Application 的使用 A,静态变量(单例模式)
B,复写android Application app = getApplication()app.setxxx()appsetxxx()4.MVC 编辑表单和添加表单公用
(5).android五大布局【LinearLayout、FrameLayout、AbsoulteLayoutRelativeLayout和TableLayout】 主要讲解了LinearLayout、FrameLayout,LinearLayout---权重Layout_weight、Layout_grayout(6)Intent 页面的跳转,值传递,获取上下文。
(7)数据库操作【以新闻客服端--Category 新闻类 为例】:
1.创建数据库和表,进行数据初始化
2.对表的 增删改查 操作 3.游标Curser 的使用。
(6)项目开发:熟悉项目开发流程,能独立完成简单的项目开发。
成果:
练习实现简单的页面布局,独立完成新闻客服端的开发流程---在原有的基础上扩展业务。
最后一周,项目开发 我们小组抽取的项目是----------个人健康卫士
个人独立完成的模块:
1、代码框架
2、实体类分析、父类方法重写、构造方法。
3、DAO 接口实现,提供数据。
单元测试,对所有DAO 接口,方法进行测试并编译通过。
4、登录、注册实现。
异常处理:
A、登录提交时,用户名、密码不能为空,否则不与提交。
数据库返回登录信息,处理登录成功与否的异常。B、注册提交时,检查注册用户名,密码不能为空,密码与确认密码要相同,否则不与提交注册。
项目完成总结心得体会。
1.个人:
在项目刚启动时,我只在java 方面比较擅长,做的模块都是涉及java基础方面的知识。对UI 方面缺乏信心,但随着项目的推进,对UI 方面见的多了解的多了,也能独立完成UI方面的模块。在这次项目中独立完成登录,注册模块。
对于每一个项目开发,都需端正态度,量力而行,发挥自己的长处,这样不仅有利于促进团队项目开发的进度,还有利于把自己代入这个项目。当自己融入这个项目时,就能多思考。并在不影响项目开发进度的前提下,思考这里为什么要这样做,这样做有什么用处。这样是一个自我学习的过程,这里本来不会做,但是经过这个项目或这个模块后,这里也会做了,把不会的变成会的,把别人的知识变成自己的。2.团队合作:
项目启动时,因为这个项目主要是UI 项目,而我在这方面基础知识比较差,主要负责了涉及java方面的模块ODA实现。在项目分析时,提的建议较多与项目组长之间发生摩擦。在项目老师的协助下,确定项目分析,确定分工模块,最终较为成功的完成了我们组的项目。
当一个团队合作时,并不是遇到的每个团队,团队成员都令你满意、每个团队都可以融洽相处。这个团队之所以形成,主要目的为了成功完成这个项目。进入团队先要明白进入团队的目的,这个团队成立的目的。明白了这两点,许多在团队中遇到的问题都可以避开或很好的解决。所有成员都围绕如何能更好更完善的完成项目为主。当然在遇到必然可能影响到项目开发进度的问题时,还需及时解决。
3、项目开发
在这次项目中,本着利用自己擅长的部分,加工加点的完成了DAO接口实现模块并实现所有的单元测试。为项目UI 后续进度提供了较为完善的后台数据、接口服务。每个项目开发的过程,都需实事求是、踏实做事。不为面子,虚报自己的能力,能做什么能做多少、都要根据自己的职业能力来下定论。遇到技术问题,自己能独立解决就独立解决,不能就及时向他人求教或自己查找资料自学。在项目开发中若有自己比较好的意见(先自己确定以目前技术是实时可行的、对项目开发或功能实现有利的意见),要向项目管理和项目其他队员提出,看是否采纳。
第五篇:Android实训报告
Android学院:****** 班级:****** 学号:****** 姓名:******
实训报告
目录
一、实训背景及目的要求.........................................................................................................................3 1.1背景简介.....................................................................................................................................3 1.2实训目的及要求...........................................................................................................................3
二、设计思路...........................................................................................................................................3 2.1设计题目.....................................................................................................................................3 2.2功能分析.....................................................................................................................................4 2.3模块划分.....................................................................................................................................4
三、设计实现及代码分析.........................................................................................................................4 3.1第一个Activity.............................................................................................................................4 3.1.1布局文件:main.xml:........................................................................................................4 3.1.2源代码文件:MainActivity.java............................................................................................7 3.2第二个Activity.............................................................................................................................8 3.2.1布局文件:result.xml..........................................................................................................8 3.2.2源代码文件:ResultActivity.java...........................................................................................9 3.3字符串资源文件:strings.xml......................................................................................................12 3.4程序清单文件:AndroidManifest.xml...........................................................................................13
四、程序功能测试及截图.......................................................................................................................14 4.1工程项目目录............................................................................................................................14 4.2程序运行界面:.........................................................................................................................14 4.3未填身高提示:.........................................................................................................................15 4.4计算示例:................................................................................................................................15
五、课程设计(实训)总结....................................................................................................................16
一、实训背景及目的要求
1.1背景简介
Android(读音:['ændrɔid])是一种以Linux为基础的开放源码操作系统,主要使用于便携设备,目前尚未有统一中文名称,中国大陆地区较多人使用安卓或安致。Android操作系统最初由Andy Rubin创办[5],最初只支持手机。2005年由Google收购注资,并拉拢多家制造商组成开放手机联盟(Open Handset Alliance)开发改良,逐渐扩展到到平板电脑及其他领域上[6]。2010年末数据显示,仅正式推出两年的操作系统的Android已经超越称霸十年的诺基亚Symbian系统,跃居全球最受欢迎的智慧手机平台。采用Android系统手机厂商包括HTC、Samsung、Motorola、Lenovo、LG、Sony Ericsson等。1.2实训目的及要求
Android以Linux为核心的Android行动平台,使用Java作为编程语言。本实训是在学习java语言程序设计的基础上进行的一次综合实践。通过综合训练,要求学生掌握java语言程序设计的基本技能和Android编程的应用,并较系统地掌握JAVA语言程序设计开发方法以及帮助文件的使用等,使学生通过本次实训,能够进行独立的Android应用程序开发,能够在实际操作中得到进一步的提高,为以后的学习和工作打下良好的基础。
目的:
1、培养学生运用所学课程Java语言程序设计的理论知识和技能,分析解决计算机实际应用中的问题的能力。
2、培养学生在Java语言程序设计的基础上,开发Android应用程序的思想和方法。
3、培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。
通过课程设计,要求学生在指导教师的指导下,独立完成课程设计的全部内容,包括:
1、确定开发的程序,收集和调查有关技术资料。
2、按软件工程步骤进行程序设计。
3、对完成的程序进行测试和完善。
4、完成课程设计报告。
二、设计思路 2.1设计题目
以Android系统的UI界面开发为基础,设计一个可以简单计算标准体重的应用程序,要求以2个Acitivity实现,第一个Activity作为输入界面,第二个Activity作为结果输出界面,具体实现细节自行设计。2.2功能分析
该设计题目要求实现可计算输出标准体重功能的应用程序。通过查阅资料可知,按照世界卫生组织推荐的计算标准体重的方法,需要获知的输入信息有性别、身高。故可在第一屏设置有单选框以确定性别,输入框以获取身高。另,为了增加程序的实用性,可再设一可选输入框,用来得到实际体重,与标准体重对比,给出用户一些健康提议。第二屏设置有结果输出显示区域与健康提示显示区域。
2.3模块划分
通过程序功能分析,可将程序划分为2个模块,即2个Activity:
第一个Activity:两个单选框(RadioButton)获取性别,一个输入框(EditText)获取身高,一个可选输入框(EditText)获取实际体重,一个按钮(Button)及一些提示文本。
第二个Activity:一个文本显示区(TextViw)显示计算结果,一个可选文本显示区(TextView)显示提示信息。
三、设计实现及代码分析 3.1第一个Activity 3.1.1布局文件:main.xml:
采用绝对布局,以实现控件精准显示;
RadioGroup包含两个RadioButton,以实现性别男女选择;
两个供输入的EditText限定了输入类型为numberDecimal,以确保只接收数字型数据。main.xml完整代码如下:
android:orientation=“vertical” android:layout_width=“fill_parent” android:layout_height=“fill_parent” > android:id=“@+id/tv1” android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:text=“@string/tv1_t” android:textSize=“20sp” android:layout_x=“50px” android:layout_y=“25px” /> android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:text=“@string/tv_sex” android:layout_x=“50px” android:layout_y=“100px” /> android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:text=“@string/tv_tall” android:layout_x=“50px” android:layout_y=“150px” /> android:id=“@+id/rg” android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:orientation=“horizontal” android:layout_x=“95px” android:layout_y=“90px” > android:id=“@+id/rb_male” android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:text=“@string/male” /> android:id=“@+id/rb_female” android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:text=“@string/female” /> android:id=“@+id/et_tall” android:layout_width=“100px” android:layout_height=“40px” android:layout_x=“100px” android:layout_y=“140px” android:inputType=“numberDecimal” /> android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:layout_x=“200px” android:layout_y=“145px” android:textSize=“20sp” android:text=“cm” />
Toast.makeText(MainActivity.this, R.string.tall_hint, Toast.LENGTH_SHORT).show();实现Activity之间跳转设置:
intent.setClass(MainActivity.this, ResultActivity.class);实现Activity之间数据封装传输: bundle.putDouble(“height”, height);bundle.putString(“sex”, sex);bundle.putString(“real”, real);intent.putExtras(bundle);MainActivity.java完整代码如下:
package com.halcyon;
import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.RadioButton;import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
private RadioButton rb1 = null;private RadioButton rb2 = null;private EditText et = null;private EditText et_real = null;private Button bt = null;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
rb1 =(RadioButton)findViewById(R.id.rb_male);
rb2 =(RadioButton)findViewById(R.id.rb_female);
rb1.setChecked(true);
et =(EditText)findViewById(R.id.et_tall);
et_real =(EditText)findViewById(R.id.et_real);
bt =(Button)findViewById(R.id.compute);
//默认为男性选中
bt.setOnClickListener(this);}
} @Override
public void onClick(View v){
} // TODO Auto-generated method stub
/**事件响应代码,获取性别、身高,判断是否输入了实际体重 * 新建Intent对象用于Activity之间跳转,及传输输入的数据 * **/
if(et.getText().toString().length()==0){
} else {
}
double height = Double.parseDouble(et.getText().toString());String real = et_real.getText().toString();String sex = “";if(rb1.isChecked()){ } else{ } Intent intent = new Intent();intent.setClass(MainActivity.this, ResultActivity.class);
Bundle bundle = new Bundle();bundle.putString(”sex“, sex);bundle.putString(”real“, real);intent.putExtras(bundle);
this.startActivity(intent);
//存放数据,以封装传输
bundle.putDouble(”height“, height);sex = ”F“;sex = ”M“;Toast.makeText(MainActivity.this,//身高未填提示
R.string.tall_hint,//注册点击事件监听
Toast.LENGTH_SHORT).show();3.2第二个Activity 3.2.1布局文件:result.xml 绝对布局,三个TextView,内容用紫色显示,提示标号用绿色显示,以达到较醒目的感觉。result.xml完整代码如下:
xmlns:android=”http://schemas.android.com/apk/res/android“ android:layout_width=”fill_parent“ android:layout_height=”fill_parent“ android:layout_margin=”10px“> android:id=”@+id/tv_1“ android:layout_width=”wrap_content“ android:layout_height=”wrap_content“ android:layout_x=”20px“ android:layout_y=”100px“ android:textSize=”20sp“ android:textColor=”#8855ff“ /> android:id=”@+id/tv_2“ android:layout_width=”wrap_content“ android:layout_height=”wrap_content“ android:layout_x=”20px“ android:layout_y=”200px“ android:textSize=”20sp“ android:textColor=”#00ff00“ /> android:id=”@+id/tv_3“ android:layout_width=”wrap_content“ android:layout_height=”wrap_content“ android:layout_x=”20px“ android:layout_y=”240px“ android:textSize=”20sp“ android:textColor=”#8855ff“ />
3.2.2源代码文件:ResultActivity.java 使用result.xml布局文件,获取intent,取得传入的数据信息,以男性:(身高cm-80)×70﹪=标准体重
女性:(身高cm-70)×60﹪=标准体重 的标准来计算标准体重,方法
private String getWeight(double height, String sex)实现此功能;
可根据用户是否输入了实际体重,来选择是否显示健康提示信息,方法 private void healthHint(double weight)实现此功能;
方法private String form(double d)实现数据格式化。ResultActivity.java完整代码如下:
package com.halcyon;
import java.text.NumberFormat;
import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.widget.TextView;
public class ResultActivity extends Activity{
/**男性:(身高cm-80)¡Á70﹪=标准体重
* 女性:(身高cm-70)¡Á60﹪=标准体重
* **/
private TextView tv_1 = null;private TextView tv_2 = null;private TextView tv_3= null;private Intent intent = null;private Bundle bundle = null;private double height = 0;private String sex = ”“;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.result);
tv_1 =(TextView)findViewById(R.id.tv_1);
tv_2 =(TextView)findViewById(R.id.tv_2);
tv_3 =(TextView)findViewById(R.id.tv_3);
intent = this.getIntent();
bundle = intent.getExtras();
height = bundle.getDouble(”height“);
sex = bundle.getString(”sex“);
tv_1.setText(this.getWeight(height,sex));
}
private String getWeight(double height, String sex){
} private void healthHint(double weight){
/*根据用户是否输入了实际体重来判断是否添加显示提示信息 * 如果输入了实际体重,按以下原则给用户以健康提示 * 标准体重正负10﹪为正常体重
* 标准体重正负10﹪~ 20﹪为体重过重或过轻 * 标准体重正负20﹪以上为肥胖或体重不足 * */
String result = ”“;String real = bundle.getString(”real“);if(real.equals(”“)){ } else {
double r = Double.parseDouble(real);double rate =(r-weight)/weight;if(rate>0.2){
//过胖
result = this.getString(R.string.very_fat);} else if(rate>=0.1&&rate<=0.2){
} else if(rate>-0.1&&rate<0.1){
} else if(rate>=-0.2&&rate<=-0.1){ } else if(rate<-0.2){
//过瘦
result = this.getString(R.string.very_thin);
//瘦
result = this.getString(R.string.thin);
//正常
result = this.getString(R.string.normal);
//胖
result = this.getString(R.string.fat);result = ”“;double weight = 0;String result = ”“;if(sex.equals(”M“)){
} else {
} healthHint(weight);return result;weight =(height-70)*0.6;result = ”这位女士,n妳的标准体重为“+form(weight)+”公斤。n“;weight =(height-80)*0.7;result = ”这位先生,n你的标准体重为“+form(weight)+”公斤。n“;
}
}
} } tv_2.setText(getString(R.string.hint));tv_3.setText(result);private String form(double d){
}
//格式化数据输出
String str = NumberFormat.getInstance().format(d);return str;3.3字符串资源文件:strings.xml 在一个Android工程中,我们可能会使用到大量的字符串作为提示信息。这些字符串都可以作为字符串资源声明在配置文件中,从而实现程序的可配置性。
在代码中我们使用Context.getString()方法,通过传递资源ID参数来得到该字符串,也可以在其他资源文件中引用字符串资源,引用格式为:”@string/字符串资源名称。
本程序所引用的strings.xml内容为:
它包含了组成应用程序的每一个组件(活动、服务、内容提供器和广播接收器)的节点,并使用Intent过滤器和权限来确定这些组件之间以及这些组件和其他应用程序是如何交互的。
因本程序使用了2个Activity,故对AndroidManifest.xml有一定的修改,内容如下:
package=“com.halcyon” android:versionCode=“1” android:versionName=“1.0”> android:label=“@string/app_name”>
四、程序功能测试及截图 4.1工程项目目录
4.2程序运行界面:
4.3未填身高提示:
4.4计算示例:
五、课程设计(实训)总结
通过本次实训:
1)练习、巩固了所学Java理论知识,提示了编程技巧;
2)体验到利用网络查找文档、解决问题的便利;
3)有幸了解到Android开发平台已及Android程序设计思想与方法;
4)开拓了视野,了解到计算机应用的广泛性,为用计算机解决实际问题打下了基础。