20172306《程序设计与数据结构》实验四报告
课程:《程序设计与数据结构》
班级: 1723
姓名: 刘辰
学号:20172306
实验教师:王志强
助教:刘伟康和张旭升
实验日期:2018年5月31日
必修/选修: 必修
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. 实验过程及结果
(1) 实验一:完成完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号
过程:首先要安装好Android Studio ,根据书中的过程。
其次要了解整个界面中,都是什么。mainifests 主要像是一个清单;Java中主要是一些Java程序;res中是系统的一些资源文件。我们要修改res达到目标。
(2)实验二:利用第二十五章,其实就是将两个程序联系起来,代码如下:
运行的结果:先是设置一个按钮:
点击后,显示自己的学号:
(3)实验三:就是利用Toast实现一个气泡。这个我看了很多人都在实验二中添加了,但是我就是单独做了一个
主要运用了这两行代码,这个在老师演示中出现过。
(4)实验四:布局测试,看了书,书中有举例了五种布局:
LinearLayout:将所有子视图以相同的方向对齐的一个布局。
RelativeLayout:根据子视图的一个或多个同级试图的位置来排列它的一个布局
FrameLayout:将每一个子视图放在另一个子视图顶部的一种格局。
TableLayout:将子视图按照行和列来组织的一种布局。
GridLayout:将子视图放置到一个栅格中的一种布局。
对其进行修改,结果如下:
(5)实验五:主要是将书中第二十八章的有关代码进行测试:
MulticolorClock:
GestureDemo:
3. 实验过程中遇到的问题和解决过程
? 问题1:第一个问题我忘记截图了,主要是我在安装好Android Studio 之后,对于Sync一直都是failed。我起码重新Try again 十二次以上结果都是一样的。
? 问题1解决方案:我把问题的提示信息复制粘贴到网上看了解决方案,但是都没成功。不过我知道我的问题在于gradle 和SDK有问题。我上官网下载gradle的压缩包,但是还是没用。试了好几个网上的方法。最后我用了最机智的方法,把它卸了重新安装一遍。这个过程中,我发现和第一遍不同的是它弹出了好几个下载的框框,我想应该是我第一次安装时出现什么问题,导致一些会提示安装的东西没有安装。之后就好了。
? 问题2:在做实验五的MulticolorClock时,将代码复制后,还是会出现问题
? 问题2解决方案:最开始我挺笨的,是将代码用记事本打开一个个复制粘贴,出现很多错误,后来同学告诉我,直接在文件中进行复制可以降低错误率。对于上面的问题,第一个图是我将红的部分删掉重新打了一遍。第二个,我现进行了一遍Clean Project,之后,会发现点R时,会有点AIt+Enter的提示,我就按了,之后就运行了一遍,出现这样的问题
之后我又进行了一遍Clean Project,又在清单中,将标红的部分重新打了一遍,再一次运行就成功了
但是也有人用这个方法是不行的。如果代码完全无误的话,R找不到的话,可以利用灯泡的提示,设置一个class,这个问题我也遇见过,并且是通过这个解决的。
其他(感悟、思考等)
首次学习有关Android的有关知识。这次的实验我觉得难度还是挺大的,因为刚开始连题目的要求都读不懂,后来看了书,问了同学才知道我应该做什么。所以觉得还是具有挑战性的。而且在这个过程中,老师让学习书中第二十四到二十七章,在做实验的过程中,可以对书中的知识亲自的理解一下。我觉得帮助还是很大的。
参考资料
原文地址:https://www.cnblogs.com/lc1021/p/9123502.html