20172301 2017-2018-2 《程序设计与数据结构》实验四报告
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应用程序文件的组成:
-
src:
在src目录中保存了开发人员编写的程序文件。 -
manifest:
其中包含了AndroidManifest.xml。这是一个控制文件,用来描述应用程序。 -
res:
存放了应用程序使用到的各种资源,如xml界面文件、图片、数据等。通常包含drawable子目录、layout子目录、values子目录三个。
接下来是实验过程,实验中在text下加入内容学号,实验结果:
(2)实验二:创建 ThirdActivity, 在ThirdActivity中显示自己的学号,修改代码让MainActivity启动ThirdActivity
这里是使用一个按钮,通过点击按钮实现这个启动另一活动,具体代码见下:
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Intent intent = new Intent(MainActivity2.this,ThirdActivity.class); // 创建一个Intent对象
startActivity(intent);
//Toast.makeText(MainActivity.this, "Hello world!", Toast.LENGTH_SHORT).show();
}
});
实验完成过程截图:
(3)实验三:修改代码让Toast消息中显示自己的学号信息
这里我是通过按钮实现Toast消息显示,Toast有很多用法,如默认显示、自定义显示位置、带图片的显示、完全自定义显示、其他线程调用显示等等。
其中实现代码见下:
Button btnshow1 = (Button) findViewById(R.id.button);
btnshow1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Toast toast = Toast.makeText(MainActivity.this,"20172302", Toast.LENGTH_LONG);
toast.show();
}
});
完成实验截图:
(4)实验四:修改布局让P290页的界面与教材不同
书上给出的代码例子包括以下布局:
线性布局LinearLayout:将所有子视图以相同方向(水平地或竖直地)对齐的一个布局;
相对布局RelativeLayout:根据子视图的一个或多个同级视图的位置来排列它的一个布局;
帧布局FrameLayout:将每一个子视图放在另一个视图顶部的一种布局;
表格布局TableLayout:将子视图按照行和列来组织的一种布局;
网格布局GridLayout:将子视图放置到一个栅格中的一种布局
该项实验主要考察书上内容,对书上的代码进行修改就可以实现,其中完成实验时将水平布局更改为垂直布局。这里修改的是res目录下的layout文件夹下的文件,是对布局文件进行的修改,修改后结果见下图:
(5)实验五:运行教材相关代码
这里的就比较简单一些,对教材代码运行相关截图见图: