20155334 实验四:Android程序设计
20155334实验四:Android程序设计
实验内容
- 基于Android Studio开发简单的Android应用并部署测试;
- 了解Android组件、布局管理器的使用;
- 掌握Android中事件处理机制。
实验要求
- 任务一:完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号;
- 任务二:创建 ThirdActivity, 在ThirdActivity中显示自己的学号,修改代码让MainActivity启动ThirdActivity;
- 任务三:修改代码让Toast消息中显示自己的学号信息;
- 任务四:修改布局让P290页的界面与教材不同;
- 任务五:运行教材本章相关代码并截图。
实验步骤
先期步骤:Android Studio的安装创立Android Studio project;(第一次创建会有一个漫长的下载过程,需要耐心等待)。创建app运行的虚拟环境(由于我的电脑设置不支持此项功能,所以在整个实验过程中使用Android手机进行测试)
任务一:
- 当Project创建完成后,和大多数的编程软件一样,会自动生成"Hello World"的代码,并且已经配置好了在Android平台上运行的相关条件。
- 将"activity_main.xml"文件中的
android:text="Hello World!"修改为android:text="Hello World!20155334" - 连接手机并安装Android Studio生成的apk文件,点击手机上的图标,则开始运行,屏幕上显示
Hello World!20155334

任务二:
- 配置
Activity:在文件AndroidManifest.xml中,只要为application元素添加activity子元素,即可配置Activity; - 在这个任务中,我们需要调用ThirdActivity,所以在AndroidManifest.xml中再添加一个activity即可;
- 每一个控制文件的Activity都需要有对应的启动程序文件(.java),和相应的布局文件(.xml);
- 在这个任务中,要求让MainActivity启动ThirdActivity,所以还需要修改MainActivity。相应代码段改为:
@Override
public boolean onTouch(View arg0, MotionEvent event) {
Intent intent = new Intent(this, ThirdActivity.class);
intent.putExtra("message", "20155303狄惟佳");
startActivity(intent);
return true;
}

任务三:
- Toast是Android中用来显示信息的一种机制。Toast显示的时间有限,在经过一段时间后就会自动消失。

任务四:
我们需要为组件添加layout_gravity属性,从而自定义组建的对齐方式。如果不使用layout_gravity属性,多项内容会重叠。layout_gravity可以使用如下所示的取值:
| top | bottom | left | certer_vertical |
|---|---|---|---|
| 将对象放在其容器的顶部,不改变其大小 | 将对象放在其容器的底部,不改变其大小 | 将对象放在其容器的左侧,不改变其大小 | 将对象纵向居中,不改变其大小,垂直方向上居中对齐 |
如下是我调整后的效果显示:

任务五:
对于任务五来说,是一个比较灵活的任务。要让程序响应某一个事件,需要为该事件编写一个监听器,手指轻触表盘则表盘的颜色更改一次。

实验中
在实验过程中多次出现了无法找到R类的状况。通过查阅百度,将之前消息框里提示的“at ' layout_above ' with value ' @id/text_p' ”,它删掉好咯。删掉之后再次 Build -- Rebuild Project 就好了。
R文件也回来了。
实验感想
- 本次实验是综合度比较高的实验,需要的相关知识比较多,各个知识点之间的联系比较强,毕竟Android应用的开发是一个全面的工程。
- 通过这次实验使我得以窥探Android应用开发过程的冰山一角,更加开阔了视野,为后续的学习打下基础。
####### PSP(Personal Software Process)时间
| 步骤 | 耗时 | 百分比 |
|---|---|---|
| 需求分析 | 20min | 12.5 |
| 设计 | 30min | 18.75 |
| 代码实现 | 60min | 37.5 |
| 测试 | 20min | 12.5 |
| 分析总结 | 30min | 18.75 |
20155334 实验四:Android程序设计的更多相关文章
- 实验四 Android程序设计 实验报告
实验四 Android程序设计 实验报告 目录 代码托管地址 Android程序设计-1 Android程序设计-2 Android程序设计-3 Android程序设计-4 Android程序设计-5 ...
- 第十四周实验报告:实验四 Android程序设计
20162317袁逸灏 第十四周实验报告:实验四 Android程序设计 实验内容 Android Studio 实验要求 学会使用Android Studio 学习 活动 以及相关知识内容 学习 U ...
- 20165235实验四 Android程序设计
20165235实验四 Android程序设计 实验课程:JAVA编程设计 实验名称:Android开发 姓名:祁瑛 学号:20165235 实验时间:2018.05.16 指导老师:娄家鹏 Andr ...
- 20165220Java实验四 Android程序设计
一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:葛宇豪 学号:20165220 指导教师:娄嘉鹏 实验日期:2018年5月14日 实验时间:13:45 - 15:25 实验序号:实验 ...
- 20172328《程序设计与数据结构》实验四 Android程序设计报告
20172328<程序设计与数据结构>实验四 Android程序设计报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 李馨雨 学号:20172328 实验教师:王志 ...
- 20172302《程序设计与数据结构》实验四Android程序设计实验报告
课程:<程序设计与数据结构> 班级: 1723 姓名: 侯泽洋 学号:20172302 实验教师:王志强老师 实验日期:2018年5月30日 必修/选修: 必修 1.实验内容 (1)And ...
- 实验四 Android程序设计
20155224 实验四 Android程序设计 实验报告 实验报告封面: 课程:Java程序设计 班级:1652班 姓名:王高源 学号:20165225 指导教师:娄嘉鹏 实验日期:2018年5月1 ...
- 20165236 实验四 Android程序设计
20165236 实验四 Android程序设计 一.实验报告 课程:Java程序设计 班级:1652班 姓名:郭金涛 学号:20165236 指导教师:娄嘉鹏 实验 ...
- 20165205 2017-2018-2 《Java程序设计》实验四 Android程序设计
20165205 2017-2018-2 <Java程序设计>实验四 Android程序设计 实验内容 实验四 Android程序设计-1 Android Stuidio的安装测试: 参考 ...
- 20155205 《Java程序设计》实验四 Android程序设计
20155205 <Java程序设计>实验四 Android程序设计 一.实验内容及步骤 (一) Android Stuidio的安装测试 参考<Java和Android开发学习指南 ...
随机推荐
- U-Mail邮件营销可视化编辑设计邮件模板so easy
相信每位看过军事演习的朋友都知道,现代战争越来越就像一场沙盘演练,真正做到了“运筹帷幄之中决战千里之外”,后方坐镇指挥战斗的能够将前线战场变得透明,这就叫“可视化战争”,做到了<孙子兵法> ...
- 如果要遍历除了for循环,你还知道什么?——JavaScript的各种遍历方式
如果要遍历除了for循环,你还知道什么?——JavaScript的各种遍历方式 这是曾经面试中的一道题目,当时的我用现在很潮的话讲,整个人是懵比的,我呆呆的说了句,我好像只知道for循环啊.后来回过神 ...
- java多态-优化上个实例
开闭原则:对修改是封闭的,对扩展是开放的,不要违反开闭原则. 可以使用多态解决这个问题.父类的引用变量可以引用子类是对象. 写的越是抽象,越是稳定 public class printerDemo { ...
- python中基于descriptor的一些概念(上)
@python中基于descriptor的一些概念(上) python中基于descriptor的一些概念(上) 1. 前言 2. 新式类与经典类 2.1 内置的object对象 2.2 类的方法 2 ...
- shouldRasterize 光栅化、(缓存)复用、内存、内容稳定
使用场景:稳定的视图(layer)被反复使用或进行动画: 本质:牺牲内存解放cpu: 反例:牺牲内存牺牲cpu. 单次使用或者视图有变动,shouldRasterize不会有任何用途,反而会牺牲内存. ...
- 使用loader打包静态文件-样式2
这篇我们了解下css-loader常用的配置项,要配置的话,use里面就不再是一个字符串了 // 打包模块不知道该怎么办,就去模块配置里面该怎么办 module: { // 规则 rules: [{ ...
- POJ2724 Purifying Machine
嘟嘟嘟 扒下来的题意:迈克有一台可以净化奶酪的机器,用二进制表示净化的奶酪的编号.但是,在某些二进制串中可能包含有\(*\).例如\(01*100\),\(*\)其实就代表可以取\(0\),\(1\) ...
- H、CSL 的拼图 【多维点的交换】 (“新智认知”杯上海高校程序设计竞赛暨第十七届上海大学程序设计春季联赛)
题目传送门:https://ac.nowcoder.com/acm/contest/551/H 题目描述 众所周知 CSL 不仅玩魔方很强,打麻将也很强.今天他打魔法麻将的时候,在路上撞到了一个被打乱 ...
- jQuery Mobile中jQuery.mobile.changePage方法使用详解
jQuery.mobile.changePage方法用的还是很多的.作为一个老手,有必要对jQuery mobile中实用方法做一些总结.系列文章请看jQuery Mobile专栏.jquery.mo ...
- 枚举enum和enumerate
#coding=utf-8 from enum import Enum #定义自己的枚举时需要使用class,继承Enum类 class Color(Enum): red=1 green=2 blue ...