版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学宁波理工学院浙江大学宁波理工学院实训报告姓名张磊学号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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2030年中国婴儿护理品市场发展状况及投资前景规划研究报告
- 2024-2030年中国增效苯甘孢霉素项目申请报告
- 2024-2030年中国团膳行业经营模式及投资规划研究报告
- 2024年体育场馆墙面涂装劳务分包合同2篇
- 2024年滁州商业场地租赁协议模板例本版B版
- 梅河口康美职业技术学院《纺织测试技术》2023-2024学年第一学期期末试卷
- 茂名职业技术学院《现代模具设计》2023-2024学年第一学期期末试卷
- 2021-2022学年河南省原阳县第三高级中学高一上学期期中考试数学试卷
- 2024年汽车制造专用铝材采购合同范本及详细条款3篇
- 洛阳师范学院《材料科学基础B(二)》2023-2024学年第一学期期末试卷
- 股权合作协议范本三篇
- 2023年四川省眉山市公开招聘警务辅助人员(辅警)笔试专项训练题试卷(2)含答案
- 《田间试验》课件
- 【MOOC】概率论与数理统计-北京理工大学 中国大学慕课MOOC答案
- 人生课件路遥
- 2024年新疆中考化学真题【附答案】
- CFA固定收益证券知到智慧树期末考试答案题库2024年秋首都经济贸易大学
- 高龄心房颤动患者抗凝治疗中国专家共识(2024)解读
- 光伏项目达标投产实施细则-施工
- 《技术经济学》练习题集
- 2023年黑龙江省齐齐哈尔市龙沙区烟草专卖局公务员考试《行政职业能力测验》历年真题及详解
评论
0/150
提交评论