博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20172303 2017-2018-2 《程序设计与数据结构》实验四报告
阅读量:5884 次
发布时间:2019-06-19

本文共 2729 字,大约阅读时间需要 9 分钟。

20172303 2017-2018-2 《程序设计与数据结构》实验四报告

  • 课程:《程序设计与数据结构》
  • 班级: 1723
  • 姓名: 范雯琪
  • 学号:20172303
  • 实验教师:王志强
  • 助教:张旭升/刘伟康
  • 实验日期:2018年5月30日
  • 必修/选修: 必修

实验内容

  • Android Stuidio的安装测试
  • Activity测试
  • UI测试
  • 布局测试
  • 事件处理测试

实验过程及结果

(一)Android Stuidio的安装测试

要求

参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十四章:

  • 参考,安装 Android Stuidio
  • 完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号,自己学号前后一名同学的学号,提交代码运行截图和码云Git链接,截图没有学号要扣分
  • 学习Android Stuidio调试应用程序

过程

src/main/res/layout目录下的activity_main.xml文件中,添加一个新的TextView,在文本中输入自己的学号和前后同学的学号。

运行结果:

1332969-20180603180125310-1059070437.png

(二)Activity测试

要求

参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十五章:

  • 构建项目,运行教材相关代码
  • 创建 ThirdActivity, 在ThirdActivity中显示自己的学号,修改代码让MainActivity启动ThirdActivity

过程

  • 首先在AndroidManifest.xml中再添加一个Activity。
  • 每一个Activity都需要有对应的启动程序文件(.java)和布局文件(.xml),所以在src/main/res/layout目录下再创建一个activity_second.xml文件,并在src/main/java目录下创建一个ThirdActivity.java文件。
  • 要使MainActivity可以启动ThirdActivity,还需要对MainActivity.java进行修改:
public class MainActivity extends Activity implements        OnTouchListener {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        TextView tv = (TextView) findViewById(R.id.textView1);        tv.setOnTouchListener(this);    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it         // is present.         getMenuInflater().inflate(R.menu.menu_main, menu);        return true;    }    @Override    public boolean onTouch(View arg0, MotionEvent event) {        Intent intent = new Intent(this, ThirdActivity.class);        intent.putExtra("message", "20172303 范雯琪");        startActivity(intent);        return true;    }}
  • 运行结果:
    1332969-20180603180152830-1138511949.png
    1332969-20180603180200033-408207160.png

(三)UI测试

要求

参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十六章:

  • 构建项目,运行教材相关代码
  • 修改代码让Toast消息中显示自己的学号信息

过程

修改教材上的代码,实现在点击Buttom之后弹出Toast消息显示自己的学号。

1332969-20180603180257380-622658711.png
运行结果:
1332969-20180603180305917-1967154181.png

(四)布局测试

要求

参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十七章:

  • 构建项目,运行教材相关代码
  • 修改布局让P290页的界面与教材不同

过程

打开src/main/res/layout目录下的activity_main.xml文件,点击Design,拖动元素进行界面修改。

运行结果:
1332969-20180603180320831-448590308.png

(五)事件处理测试

要求

参考《Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)》第二十八章:

  • 构建项目,运行教材相关代码
  • 提交代码运行截图和码云Git链接,截图要有学号水印,否则会扣分

过程

构建项目,运行教材代码

运行结果:
1332969-20180603180337627-1607125881.png
1332969-20180603180349799-1889888772.png

实验过程中遇到的问题和解决过程

  • 问题1:如何导入教材上的代码?
  • 问题1解决方法:首先新建一个项目,名字要与
    1332969-20180603180402543-1474226057.png
    目录下的名字一致,然后分别将AndroidManifest.xmlres文件和MainActivity.java复制进去。
  • 问题2:将代码复制进去后,R文件变红
    1332969-20180603180415639-1663965140.png
  • 问题2解决方法:查到了一篇博客:,成功解决了问题。
  • 问题3:在实验中途修改了码云地址,导致不能上传
  • 问题3解决方法:选择VCS→Git→Remotes...
    1332969-20180603180448220-573437387.png
    在打开的界面中选择绿色的加号,
    1332969-20180603180601842-1237189346.png
    将修改后的码云地址复制进去,选择OK。
    1332969-20180603180627469-2143997142.png
    选择要Git的文件右键,选择Git→Repository→Remotes...
    1332969-20180603180640601-830248274.png
    选择新的码云地址并点击OK即可继续上传。

其他(感悟、思考等)

用了AS之后最大的感触就是再也不敢轻易删东西了,以前有时候代码有实在解决不了的问题时,可能删掉重新建一个就好了,但是在AS里随随便便删东西就很容易出其他问题。这是我拿重建了两个项目和两个码云地址并且电脑炸过一次后得到的血的教训o(╥﹏╥)o

参考资料

转载于:https://www.cnblogs.com/PFrame/p/9129982.html

你可能感兴趣的文章
scala111
查看>>
模块化服务规范——OSGI
查看>>
劣质代码评析——猜数字问题(上)
查看>>
纸上谈兵: 栈 (stack)
查看>>
Windows phone8 基础篇(三) 常用控件开发
查看>>
Oracle学习笔记之五,Oracle 11g的PL/SQL入门
查看>>
大叔手记(3):Windows Silverlight/Phone7/Mango开发学习系列教程
查看>>
考拉消息中心消息盒子处理重构(策略模式)
查看>>
so easy 前端实现多语言
查看>>
【追光者系列】HikariCP源码分析之ConcurrentBag&J.U.C SynchronousQueue、CopyOnWriteArrayList...
查看>>
canvas系列教程05-柱状图项目3
查看>>
css绘制几何图形
查看>>
HTML标签
查看>>
理解JS中的Event Loop机制
查看>>
转载:字符编码笔记:ASCII,Unicode和UTF 8
查看>>
修复看不懂的 Console Log
查看>>
Android跨进程通信 AIDL使用
查看>>
ajax常见面试题
查看>>
结合kmp算法的匹配动画浅析其基本思想
查看>>
vue进行wepack打包执行npm run build出现错误
查看>>