20182322 2019-2020-1 《数据结构与面向对象程序设计》实验五报告
课程:《程序设计与数据结构》
班级: 1823
姓名: 王美皓
学号:20182322
实验教师:王志强
实验日期:2019年10月16日
必修/选修: 必修
1.实验内容
1.Android Stuidio的安装测试:
参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十四章:
参考http://www.cnblogs.com/rocedu/p/6371315.html#SECANDROID,安装 Android Stuidio
完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号,自己学号前后一名同学的学号,提交代码运行截图和码云Git链接,截图没有学号要扣分。
学习Android Stuidio调试应用程序
2.Activity测试
参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十五章:
构建项目,运行教材相关代码
创建 ThirdActivity, 在ThirdActivity中显示自己的学号,修改代码让MainActivity启动ThirdActivity
3.UI测试
参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十六章:
构建项目,运行教材相关代码
修改代码让Toast消息中显示自己的学号信息
4.布局测试:
参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十七章:
构建项目,运行教材相关代码
修改布局让P290页的界面与教材不同
5.事件处理测试:
参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十八章:
构建项目,运行教材相关代码
提交代码运行截图和码云Git链接,截图要有学号水印,否则会扣分
2. 实验过程及结果
由于版本不兼容,我使用的Genymotion软件模拟的android手机
-
任务一:
运行: -
任务二:
1.新建一个名称为ThirdActivity
- Android Studio会自动生成该Activity的xml文件。
- 在ThirdActivity.xml中添加一段文本,来表示已经跳转了Activity。
2.修改MainActivity
首先,我们将xml文件修改成一个只有Button按钮的页面,修改id信息:android:id="@+id/btnStartAnotherAty",将Text界面中text文本信息改为启动另一个activity
3.启动另一个ThirdAcitivity
在MainActivity.java文件中,调用startAcitivity这个api来
findViewById(R.id.btnStartAnotherAty).setOnCliListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
startActivity(new Intent(MainActivity.this, ThirdActivity.class));
}
});
4.运行:
3.任务三:
-
在Toast项目中的MainActivity.java中,创建并显示一个Toast,启动·方式是点击Button之后。
-
运行:
4.任务四:
- 将背景设为自定义的图片,参考博客
-
修改界面
首先将照片设置为背景,给照片添加属性,android:background="@mipmap/q"
-
运行:
5.任务五:
实验过程
1.查看第二十八章和在网上查询android的监听器内容
Android四种监听方式:
- 实现监听的接口
- 实现匿名内部类
- 使用外部类
- 直接在xml中设置监听
2.运行结果:
3. 实验过程中遇到的问题和解决过程
- 问题1:前面从输入信息到生成题目都是很顺畅的没有什么大的问题,直到需要输入答案的时候出现了些问题,因为是初次了解Android开发,不知道怎么给ListView的每一条item设置监听器,只好不停的范数,查资料。
- 问题1解决方案:在翻过很多书后没什么结果就去上网找,终于找到了一个ListView点击事件跳转的实例代码,我才知道原来ListView中对于每一个item都自带了一个可以设置点击事件的监听器,才终于实现了我想要的效果。
- 问题2:.Android Studio无法识别Genymotion中的安卓虚拟机
- 问题2解决方案:更新Genymotion,卸载软件,并从官网上重新下载了Genymotion。之后就可以用了。
- 问题3:Genymotion远程主机强迫关闭了一个现有的连接
- 问题3解决方案:
其他(感悟、思考等)
-
安卓实验对们而言,已经超出了能力范围之内,我花费大量时间上网查资料,请教别人才在快结束时写完实验,这给我一个提醒,下次实验要提前去做。
-
这次实验虽然非常难,但学到了许多很实际有用的东西,我收获非常大。