版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学宁波理工学院浙江大学宁波理工学院实训报告姓名张磊学号3090411075班级信计092组别实训名称开发工具Eclipse指导教师赵哲实训目的通过精心的设计和合理的规划使学员在相对较短的时间内快速掌握Java/Android开发技术提高学员实战编程技能、积累项目经验。在讲师的带领下完成给予Android应用平台的完整项目。实训内容学员可从以下三个项目中选择其一完成:BMI人体健康指数分析器完成以下功能界面内输入查询者的身高数据、体重数据界面内选择查询者的性别点击计算按钮跳转到新的界面上时,使用图形化的方式显示该查询者的健康指数PK对抗伤害计算完成以下功能界面内点击开始对战跳到新的界面内根据用户所选择的职业提供不同的属性值输入当用户点击创建玩家2时,根据界面所选择的数据构建玩家1对象,并转向创建玩家2的界面在用户点击开始对战时,根据界面所选择的数据构建玩家2对象,并转向对战界面在对战界面调用玩家的对战方法并将一次对战的结果输出到界面上小小星际争霸完成以下功能能够根据可创建的兵种创建作战单元选择作战单元后,可以在检查区域内查看该作战单元的基本信息在选择作战单元的条件下,用户按MENU按键时,操作栏变为移动和攻击在选择作战单元的条件下,可将其移动到一个目标集合点。使用工厂设计模式、接口与多态技术简化代码实训步骤(附录源程序)我选择的是:BMI人体健康指数分析器代码及解释:packagecom.tarena.day05;importandroid.app.Activity;importandroid.os.Bundle;importandroid.widget.ImageView;publicclassBaseActivityextendsActivity{ privateImageViewimageView; protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.result); imageView=(ImageView) findViewById(R.id.result_image); doublebmi=getIntent().getDoubleExtra("bmi",22); intlevel=BmiMethod.level(bmi); switch(level){ caseBmiMethod.LEVEL_0: imageView.setImageResource(R.drawable.demo1_1); break; caseBmiMethod.LEVEL_1: imageView.setImageResource(R.drawable.demo1_2); break; caseBmiMethod.LEVEL_2: imageView.setImageResource(R.drawable.demo1_3); break; caseBmiMethod.LEVEL_3: imageView.setImageResource(R.drawable.demo1_4); break; } }}packagecom.tarena.day05;importandroid.app.Activity;importandroid.content.Intent;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.RadioGroup;importandroid.widget.RadioGroup.OnCheckedChangeListener;importandroid.widget.TextView;importandroid.widget.Toast;publicclassBmiActivityextendsActivity{ /**Calledwhentheactivityisfirstcreated.*/ privateEditTextheightEditText; privateEditTextweightEditText; privateButtoncomputeButton; privateButtoncleanButton; privateRadioGroupgenerRadioGroup; privateTextViewgenerTextView; @Override publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); linkComponents(); linkEventListeners(); } //连接主键 publicvoidlinkComponents(){ heightEditText=(EditText)findViewById(R.id.main_height); weightEditText=(EditText)findViewById(R.id.main_weight); computeButton=(Button)findViewById(R.id.main_compute); cleanButton=(Button)findViewById(R.id.main_clean); generRadioGroup=(RadioGroup)findViewById(R.id.main_gener_group); generTextView=(TextView)findViewById(R.id.main_gener_text); } //连接接听器 publicvoidlinkEventListeners(){ generRadioGroup.setOnCheckedChangeListener( newOnCheckedChangeListener(){ publicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){ switch(checkedId){ caseR.id.main_gener_group_male: generTextView.setText("男性"); break; caseR.id.main_gener_group_female: generTextView.setText("女性"); break; } } }); //计算按钮 computeButton.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ StringheightStr=heightEditText.getText().toString(); StringweightStr=weightEditText.getText().toString(); booleanflag=true; //如果输入为空,则提示错误 if(heightStr.trim().equals("")){ heightEditText.setError("请输入身高");flag=false; } if(weightStr.trim().equals("")){ weightEditText.setError("请输入体重"); flag=false; } //如果输入正确则传入参数计算 if(flag){ intheightInt=Integer.parseInt(heightStr); intweightInt=Integer.parseInt(weightStr); doublebmi=BmiMethod.bmi(heightInt,weightInt); Toast.makeText(BmiActivity.this,""+bmi,1000).show(); Intentintent=newIntent(); intent.setClass(BmiActivity.this,BaseActivity.class); intent.putExtra("bmi",bmi); startActivity(intent); } } }); //清空按钮 cleanButton.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ heightEditText.setText(""); weightEditText.setText(""); } }); } }packagecom.tarena.day05;/***计算BMI指数和划分肥胖程度等级*/publicclassBmiMethod{ publicstaticfinalintLEVEL_0=0; publicstaticfinalintLEVEL_1=1; publicstaticfinalintLEVEL_2=2; publicstaticfinalintLEVEL_3=3; /**计算BMI指数公式*/ publicstaticdoublebmi(intheight,intweight){ doubleheightD=height/100.0; returnweight/heightD/heightD; } /**肥胖程度等级划分*/ publicstaticintlevel(doublebmi){ if(bmi<20)returnLEVEL_0; if(bmi<25)returnLEVEL_1; if(bmi<30)returnLEVEL_2; returnLEVEL_3; }}实训体会刚开始接触Android感觉到它很有意思,在界面开发上和web也可以形成了相通的架构,更加方便,视觉上也是非常的酷。我在为期十天的实训中学到了很多在课堂上根本就学不到的知识,收益非浅.现在我对这半个月的实习做一个工作小结。通过十天的android实习,基本掌握了Android应用程序开发的一般流程。对常用控件基本掌握其用法,对其事件的监听方法也基本掌握。学习Android不仅是对前沿开发技术的了解,也是对编程知识的一次提升。通过学习Android的控件、布局、Activity、Service等一系列基础知识,对整个Android的开发有了大致的了解。例如:要的布局(或者控件),在学习界面中,我发现Android为我们提供了很好的类似反射机制,通过Layout文件夹下的配置文件,可以快速的形成界面,在配置文件可以设置属性或者样式都是很快捷方便。对比较特殊的界面也可以通过处理嵌入到指定的界面,同样你可以通过java代码直接创建View进行添加,不过这种方式比较复杂。对一些点击、选中、按键等处理的事件,界面之间的跳转及Intent管理,通过Bundle对数据在界面之间进行传输。在Android编程过程中巩固熟悉了Java的编程。由于Android应用程序的开发离不开Java的支持,所以基础的Java知
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【3年高考2年模拟】2024高考地理二轮高频考点:第二练-地球运动规律
- 隋唐制度的变化与创新课件 2024-2025学年高一上学期统编版(2019)必修中外历史纲要上
- 新解读《GB 51079-2016城市防洪规划规范 》
- 天津市南开区2023-2024学年高二下学期7月期末考试语文试题(解析版)
- 质量和环保保证协议
- 2024年职业技能(生态环境监测)专业技术员知识考试题库与答案
- 人力资源政策对女性就业影响的研究
- 股权激励机制在高新技术企业中的应用
- 江苏省南通市海门市2024年中考五模数学试题含解析
- unit4(进阶作业)2024-2025学年六年级上册 英语 人教版
- 《心系国防 强国有我》 课件-2024-2025学年高一上学期开学第一课国防教育主题班会
- 第3课+追求人生理想+第一框+第3目【中职专用】2024-2025学年中职思想政治《哲学与人生》(高教版2023基础模块)
- 第一章第三节 地球的运动课件 2024-2025学年(2024)人教版地理七年级上册
- 2024年公益性岗位考试真题及答案解析分享
- 新北师大版七年级上册数学全册教学课件(2024年秋季新版教材)
- 2024年联通网络运营及线务运维技能竞赛考试题库-上(单选题)
- 咸阳市县级地图可编辑矢量行政区划(陕西省)
- 2024年网络安全技能竞赛(CTF)考试题库600题(含答案)
- 2024年珠海市香洲区招考社会管理协管员(高频重点提升专题训练)共500题附带答案详解
- 马术俱乐部卫生与会员安全
- 城市商业综合体运营管理方案
评论
0/150
提交评论