20145226夏艺华 《Java程序设计》实验报告四
实验四 Android开发基础

实验内容
基于Android Studio开发简单的Android应用并部署测试
了解Android组件、布局管理器的使用
掌握Android中事件处理机制
Android Studio安装
实验步骤
(一)Android Studio安装
在Android Studio安装之前首先要配置系统的JDK和SDK环境变量,系统环境配置完成后到对应的网址。下载完成后进行安装。
点击下载完成的.exe文件,进入安装界面,根据提示进行安装,安装界面如下:


(二)Android Studio的简单应用开发
安装完成后可以运行Android Studio,第一次运行时要确定SDK文件位置并更新SDK文件。更新完成后,创建新的项目:

填写项目名和包名,填写完成后点击下一步,创建新项目:

弹出Activity的名称,可做修改也可不修改,直接finish完成就行。

点击创建完成的项目,可修改对应的组件和布局文件以及事件代码,本文直接运行HelloWorld文件


运行完成后,对应的界面如下所示:

(三)修改Hello World项目,在后面添加学号显示
界面的代码如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="xyh.com.aclass.myapplication.MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World! 20145226夏艺华" />
</RelativeLayout>
显示结果如下所示:

(四)活动跳转
MainActivity 活动中的代码为:
public class MainActivity extends AppCompatActivity {
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button)this.findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, ThirdActivity.class);
intent.putExtra("message", "20145226夏艺华");
startActivity(intent);
}
});
}
}
添加了一个按钮用于跳转,显示界面中的代码为:
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="点击跳转" /> }
}
界面显示如下:

(五)Toast 提示
ThirdActivity 活动中的代码为:
public class ThirdActivity extends AppCompatActivity {
private TextView tv ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third);
tv = (TextView)this.findViewById(R.id.tv);
tv.setText(ThirdActivity.this.getIntent().getExtras().toString());
Toast toast = Toast.makeText(ThirdActivity.this,"20145226夏艺华", Toast.LENGTH_LONG);
toast.show();
}
}
界面显示如下:

本次实验的 PSP(Personal Software Process) 时间:
| 步骤 | 耗时 | 百分比 |
|---|---|---|
| 需求分析 | 40min | 18.2% |
| 设 计 | 50min | 22.7% |
| 代码实现 | 60min | 27.3% |
| 测 试 | 30min | 13.6% |
| 分析总结 | 40min | 18.2% |
20145226夏艺华 《Java程序设计》实验报告四的更多相关文章
- 20145226夏艺华 JAVA预备作业1
博客阅读总结 关于师生关系: 学生和老师之间我觉得关系时多元化的,不能拘泥于单独的一种关系:灌输与被灌输,教授与被教授--我认为,在不同的课程阶段,师生之间的关系都可以发生变化.前期的老师更像是一个指 ...
- 20145226夏艺华《网络对抗》第一次实验拓展:shellcode注入+return-to-libc
20145226夏艺华<网络对抗>第一次实验拓展:shellcode注入+return-to-libc shellcode注入实践 编写shellcode 编写shellcode已经在之前 ...
- 20145226夏艺华 网络对抗技术 EXP9 web安全基础实践
20145226夏艺华 网络对抗技术 EXP9 web安全基础实践 !!!免考项目:wannacry病毒分析+防护 一.实验后回答问题 SQL注入攻击原理,如何防御 攻击原理 "SQL注入& ...
- 20145226夏艺华 网络对抗技术EXP8 WEB基础实践
20145226夏艺华 网络对抗技术EXP8 WEB基础实践 实验问题回答 1.什么是表单? 表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CG ...
- 20145226夏艺华 Exp6 信息搜集与漏洞扫描
20145226夏艺华 Exp6 信息搜集与漏洞扫描 基础问题回答 哪些组织负责DNS,IP的管理? · 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器.DNS和IP地址管理 ...
- 20145226夏艺华 网络对抗技术 EXP7 网络欺诈技术防范
20145226夏艺华 网络对抗技术 EXP7 网络欺诈技术防范 实践内容 本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法. · 简单应用SET工具建立冒名网站 · ett ...
- 20145226夏艺华 网络对抗技术EXP4 恶意代码分析
20145226夏艺华 网络对抗技术EXP4 恶意代码分析(未完成版) 回答问题 (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作 ...
- Python程序设计实验报告四:循环结构程序设计(设计型实验)
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 姚彩琴 学号3190505129 成绩 日期 2020.4.8 指导老师 修宇 [实验名称 ...
- C语言程序设计实验报告四
C程序设计实验报告 姓 名:赖瑾 实验地点:家 实验时间:2020年4月9日 实验项目:5.3.1练习2 求数列的前n项和 5.3.2练习2 求水仙花数 5.3.4 十进制转换 5.3.5练习1 百马 ...
随机推荐
- 防止开放重定向,恶意篡改returnUrl
1.防止开放重定向: /// <summary> /// 防止开放重定向 /// </summary> /// <param name="url"&g ...
- 网络Socket编程(简易qq实现之C/S通信1)
1. 目标:实现两个用户之间的通信,利用的是简单的Socket知识以及简略界面 2. 界面:分为客户端与服务器端(如下图) 3. 基本功能:客户端先向服务器端发送一个消息,这样就可以让客户端与服务器端 ...
- 【[SDOI2009]Elaxia的路线】
魏佬告诉我跑得快不一定赢,不跌跟头才是成功 我决定把这句话作为魏佬的名言记下来 等以后人人捧着魏佬语录的时候,我可以告诉他们魏佬从小就开始向我传授人生经验 但我就是跑的快,而且非常快 成功卡到了b站最 ...
- 【QT】QString类型转换为const char*(toLatin1)
Qstring str = "helloworld"; char *s; QByteArray ba = str.toLatin1(); s = ba.data(); toLati ...
- Odoo中的约束
转载请注明原文地址:https://www.cnblogs.com/cnodoo/p/9280735.html 一:装饰器约束(字段约束) 装饰器参数指定了约束的字段,当涉及的字段中任一发生改变时触发 ...
- keras学习笔记2
1.keras的sequential模型需要知道输入数据的shape,因此,sequential的第一层需要接受一个关于输入数据shape的参数,后面的各个层则可以自动的推导出中间数据的shape,因 ...
- 页面QQ在线咨询、在线交谈代码
页面QQ在线咨询.在线交谈代码 样式一: <a target="blank" rel="nofollow" href="tencent://me ...
- Redis(二)安全设置
redis是一款流行的内存数据库,默认是无密码登录,若出于安全考虑,需要为其加上控制权限,则可以通过以下2种方法来设置. 1. 采用绑定IP的方式来进行控制(比较安全的方法) 在redis.conf( ...
- HDU 3339 In Action(迪杰斯特拉+01背包)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=3339 In Action Time Limit: 2000/1000 MS (Java/Others) ...
- rsync + mysql + gzip + --single-transaction
1.rsync -avz 172.16.2.61:~/vs/program/elasticsearch-5.0.0 --exclude=elasticsearch-5.0.0/data/* ./ 从其 ...