实验四:Android 开发基础
实验四:实验报告
课程:程序设计与数据结构
班级: 1623
姓名: 张旭升
学号:20162329
指导教师:娄嘉鹏 王志强
实验日期:5月26日
实验密级: 非密级
预习程度: 已预习
必修/选修: 必修
实验序号: cs_29
实验名称: Java面向对象程序设计Android开发
实验内容
1.Android Stuidio的安装测试: 参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十四章:
2.Activity测试: 参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十五章:
3.UI测试: 参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十六章:
4.布局测试: 参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十七章:
5.事件处理测试: 参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十八章:
实验要求
- 完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是 运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决 办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可 以得到什么启示,有什么收获,教训等)。报告可以参考范飞龙老师的指导
- 严禁抄袭,有该行为者实验成绩归零,并附加其他惩罚措施。
实验步骤
1.安装 Android Stuidio(注意环境配置)(详见安装教程)完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号学习Android Stuidio调试应用程序
2.Activity测试:构建项目,运行教材相关代码创建 ThirdActivity, 在ThirdActivity中显示自己的学号,修改代码让MainActivity启动ThirdActivity
3.UI测试:构建项目,运行教材相关代码修改代码让Toast消息中显示自己的学号信息
4.布局测试:构建项目,运行教材相关代码修改布局让P290页的界面与教材不同
5.事件处理测试:构建项目,运行教材相关代码
6.PSP时间表:在表格中统计项目各不周所花费的时间。
实验过程
1.安装Android studio
2.创建虚拟手机
3.Hello World!测试
4.四则运算项目实现
一.安装Android studio
1.安装Android studio


2.创建一个新的项目:

3.选择合适的Android版本:

4.创建一个新的活动:

二.创建虚拟手机:
1.选中一款自己喜欢的手机:

2.下载相关组件:

3.完成创建并运行它:


三.Hello World!测试
在我创建第一个活动的时候Android studio已经帮我们自动生成了Hello World!的相关代码
代码截图:
1.布局代码:

2.活动代码:

3.运行结果:

四.四则运算的代码实现:
由于我上周进行了四则运算的结对编程项目,这次想在Android开发下基于之前的代码做出一个相关的APP来,类似于小学口算题卡。
1.设计思路:
由于是第一次接触Android开发相关东西需要摸索就先设计一个简单的。
基于上周的代码我们首先需要一个用户选择题目数量和题目等级的窗口
然后需要调用代码中的
Practice中的方法来自动生成所需题目然后将生成的题目调用
Original转换为后缀表达式然后将后缀表达式用
Counts进行计算然后设置永辉回答界面,并对回答的问题进行判断正误
2.逐步实现:
- 用户输入界面使用EditText控件

- 然后将上周的相关代码拷贝至Android studio中

- 在将用户输入的信息作为参数传入题目生成方法然后传入下一个活动然后使用ListView把他们每一条的显示出来
局部代码:
button4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
prc.list.clear();
if(!editText1.getText().toString().equals("") && !editText2.getText().toString().equals("")) {
int A = Integer.parseInt(editText1.getText().toString());
int B = Integer.parseInt(editText2.getText().toString());
prc.Ti(A, B);
Intent intent = new Intent(MainActivity.this, PracticeActivity.class);
intent.putExtra("key",(Serializable) prc.list);
startActivity(intent);
}else {
Toast.makeText(MainActivity.this,"请正确输入!",Toast.LENGTH_SHORT).show();
}
}
});
运行结果:


- 在ListView显示的每一条信息中设置一个点击监听器,点击后可进入下一个模式对话框的活动来进行答题,并在答题后判断其对错。
代码展示:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_enter);
editText = (EditText) findViewById(R.id.editText3);
button = (Button)findViewById(R.id.button5);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String result = editText.getText().toString();
String A = getIntent().getStringExtra("key");
if (result.equals(A))
Toast.makeText(EnterActivity.this, "正确!", Toast.LENGTH_LONG).show();
else {
Toast.makeText(EnterActivity.this,("错误!\n 正确答案为:" + A),Toast.LENGTH_LONG).show();
}
finish();
}
});
}
运行结果:



实验中遇到的问题
- 前面从输入信息到生成题目都是很顺畅的没有什么大的问题,直到需要输入答案的时候出现了些问题,因为是初次了解
Android开发,不知道怎么给ListView的每一条item设置监听器,只好不停的范数,查资料。
解决方案:
在翻过很多书后没什么结果就去上网找,终于找到了一个ListView点击事件跳转的实例代码,我才知道原来ListView中对于每一个item都自带了一个可以设置点击事件的监听器,才终于实现了我想要的效果。
实验不足
本次实验中唯一可惜的是自己对于Android开发和Android中的相关类及方法都不熟悉,虽然自己有很多想法但是苦于无法实现,希望自己能在假期中花一点时间去学习学习这方面的相关知识。
实验心得
本次实验中我并没有完全按照老师的指示去一步步的完成,而是在老师所指定的基础上又自己学习了一些相关的知识,以至于自己可以达到将之前自己所写到产品代码在一个手机APP中实现出来,在做出这个口算题卡的APP时我是非常激动的,虽然它还是很简单,也存在一些bug但是对于在自己的努力下可以独立的完成这样一个小项目还是很有成就感的,希望自己可以再接再厉!!加油!!
实验四:Android 开发基础的更多相关文章
- 20145213 《Java程序设计》实验四 Android开发基础
20145213 <Java程序设计>实验四 Android开发基础 说在前面的话 不同以往实验,对于这次实验具体内容我是比较茫然的.因为点我,打开实验四的链接居然能飘出一股熟悉的味道,这 ...
- 实验四 Android开发基础
实验四 Android开发基础 实验内容 1.安装Android Studio 2.运行安卓AVD模拟器 3.使用安卓运行出虚拟手机并显示HelloWorld以及自己的学号 (一)SDK的安装 (二) ...
- 20145337实验四Android开发基础
20145337实验四Android开发基础 实验内容 基于Android Studio开发简单的Android应用并部署测试; 了解Android组件.布局管理器的使用: 掌握Android中事件处 ...
- 20145225《Java程序设计》 实验四 Android开发基础
20145225<Java程序设计> 实验四 Android开发基础 实验报告 实验内容 安装Android Studio 运行安卓AVD模拟器 使用安卓运行出虚拟手机并显示HelloWo ...
- 20145208 实验四 Android开发基础
20145208 实验四 Android开发基础 安装Android Studio 安装的具体步骤在老师的链接中已经很详细了,在此就不做赘述了. 在此提出我觉得安装的时候需要注意的两个地方 一是安装地 ...
- 20145215实验四 Android开发基础
20145215实验四 Android开发基础 实验内容 基于Android Studio开发简单的Android应用并部署测试; 了解Android组件.布局管理器的使用: 掌握Android中事件 ...
- 20165223 实验四 Android开发基础
实验四 Android开发基础 目录 一.实验报告封面 二.具体实验内容 (一)Android Stuidio的安装测试 (二)Activity测试 (三)UI测试 (四)布局测试 (五)教材代码测试 ...
- 20155324 《Java程序设计》实验四 Android开发基础
20155324 <Java程序设计>实验四 Android开发基础 实验内容 1.基于Android Studio开发简单的Android应用并部署测试; 2.了解Android.组件. ...
- 20155228 实验四 Android开发基础
20155228 实验四 Android开发基础 实验内容 1.基于Android Studio开发简单的Android应用并部署测试; 2.了解Android.组件.布局管理器的使用: 3.掌握An ...
- 20155219实验四 Android开发基础设计实验报告
20155219实验四 Android开发基础设计实验报告 实验内容 安装Andriod Studio并配置软件 使用Andriod Studio软件实现Hello World!+学号的小程序 实验步 ...
随机推荐
- 【BZOJ4237】稻草人(CDQ分治,单调栈)
[BZOJ4237]稻草人(CDQ分治,单调栈) 题面 BZOJ 题解 \(CDQ\)分治好题呀 假设固定一个左下角的点 那么,我们可以找到的右下角长什么样子??? 发现什么? 在右侧是一个单调递减的 ...
- 【BZOJ3994】约数个数和(莫比乌斯反演)
[BZOJ3994]约数个数和(莫比乌斯反演) 题面 求\[\sum_{i=1}^n\sum_{j=1}^md(ij)\] 多组数据\((<=50000组)\) \(n,m<=50000\ ...
- Luogu3527:[POI2011]MET-Meteors
题面 Luogu Sol 整体二分 比较简单,当练手题 每次树状数组统计 # include <bits/stdc++.h> # define RG register # define I ...
- 掌握这些知识,你的python水平能更上一层楼
今天讲一些python中的高级用法,有助于大家更好的使用python这门语言.今天讲的这些知识是层层递进的关系,前面是后面的铺垫. 函数可变参数*args和**kwargs python支持固定参数, ...
- 8Manage:数据安全,企业新时代的护航利器
数据安全,是个老生常谈的话题,但是安全往往是在危险的时候方能体现出来,因此,这也是很容易被人们所忽略的部分.2017年,数据安全事件更是屡屡登上头条,除了个人信息的数据泄露之外,还有网络病毒造成的全球 ...
- PLSQL Developer连接远程数据库的配置
去Oracle的安装目录找到:D:\oracle\NETWORK\ADMIN这个路径下面的tnsnames.ora文件 修改文件: 这个是本地的 ORCL = (DESCRIPTION = (ADDR ...
- MySQL多数据源笔记2-Spring多数据源一主多从读写分离(手写)
一.为什么要进行读写分离呢? 因为数据库的"写操作"操作是比较耗时的(写上万条条数据到Mysql可能要1分钟分钟).但是数据库的"读操作"却比"写操作 ...
- oracle中增加pga和sga
修改oracle数据库SGA和PGA大小 个人原创,允许转载,请注明出处,作者,否则追究法律责任. SGA的大小:一般物理内存20%用作操作系统保留,其他80%用于数据库.SGA普通数据库可以分配40 ...
- python趣味——与MS系列编译器一样强大的Unicode变量名支持
中文变量名,中文函数名,中文类名等,可惜Python2不支持,但在Python3时代,这些都可以完美支持了. def 中文函数(): return 1
- C++string类总结
一.string的初始化 首先,为了在程序中使用string类型,必须包含头文件 <string>.如下: #include <string> 注意这里不是string.h,s ...