《JAVA程序设计》 20155208 实验四 Android程序设计

实验一:

实验要求:

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

  • 安装 Android Stuidio
  • 完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号
  • 学习Android Stuidio调试应用程序

实验结果截图:

试验中遇到的问题:

在这个试验中,安装Android Studio没有遇到问题,按照流程顺利的安装,但在修改res目录中的内容时,由于不知道基本的操作的方法,无从下手,在查阅资料后,知道要在textview中修改即可。

对于这个实验所需要的知道的知识点:

项目的目录树。一个完整的项目通常由下面这些部分组成:

  1. build:该目录包含了自动生成的文件,这些文件包括了编译设置项、R类等。
  2. libs:该目录包含了开发Android应用所需要的库文件。
  3. src:该目录存放了应用的源代码.java文件。默认情况下,它包含了MainActivity.java文件,这个源代码j有一部分是执行了你点击应用图标时启动应用所需要功能。
  4. res:该目录存放了所有的资源文件。

    drawable:该目录存放了项目的drawable对象和一些图片资源。
  5. layout:该目录存放了各个界面的布局文件。
  6. menu:该目录存放了应用中设计的菜单对象。
  7. mipmap:该目录存放了应用的主要图片资源。
  8. values:该目录存放了字符串、颜色等定义的资源集合。
  9. AndroidManifest.xml:该文件是描述应用基础特性的文件,定义了每个组件。

实验二:

实验要求:

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

实验结果截图:

实验内容:

  1. 现在layout中新建一个Activity
  2. 在新建的Activity中加入textview,使其可以打印helloword。
  3. 通过setContentView方法来为Activity加载布局
setContentView(R.layout.activity_main2);

试验中遇到的问题与知识点:

  1. 在拥有多个活动的程序中,有可能会启动另一个活动,通过一个活动来启动另一个活动,可以通过调用startActivity来做到。

实验三:

实验要求:

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

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

实验结果截图:

实验内容:

  1. 在mainActivity中添加
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v){
Toast toast = Toast.makeText(MainActivity.this,"20155218", Toast.LENGTH_LONG);
toast.show();
}
}

目的是添加一个button,可连接到监视器,单击该按钮时触发监视器。

2.在xml文件中,添加一个button,并注意改button的id。

该实验需要的基础知识

  1. Toast是Android中用来显示信息的一种机制。Toast显示的时间有限,在经过一段时间后就会自动消失。
  2. 在创建Android应用程序的时候,第一件事就是为主活动构建用户交互。

实验四

实验要求:

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

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

实验结果截图:

实验所需要知识点:

  1. android:id:为一识别该视图的ID。
  2. android:layout_width:布局的宽度。
  3. android:layout_height:布局的高度。
  4. android:layout_marginTop:布局顶部的额外空间。
  5. android:layout_marginBottom:布局底部的额外空间。
  6. android:layout_marginLeft:布局左部的额外空间。
  7. android:layout_marginRight:布局右部的额外空间。
  8. android:layout_gravity:指定子视图的放置方式。
  9. android:layout_weight:权重。指定了在布局中,应该分配多少的额外空间给某个视图。
  10. android:layout_x:指定了布局的X坐标。
  11. android:layout_y:指定了布局的Y坐标。
  12. android:paddingLeft:布局左边的内边距。
  13. android:paddingRight:布局右边的内边距。
  14. android:paddingTop:布局顶部的内边距。
  15. android:paddingBottom:布局底部的内边距。
  16. top:将对象放置在容器的顶端而不改变其尺寸。
  17. bottom:将对象放置在容器的底端而不改变其尺寸。
  18. left:将对象放置在容器的左端而不改变其尺寸。
  19. right:将对象放置在容器的右端而不改变其尺寸。
  20. center_vertical:将对象放置在容器的垂直方向中心处而不改变其尺寸。
  21. center_horizontal:将对象放置在容器的水平方向中心处而不改变其尺寸。
  22. fill_vertical:在需要时增加对象在垂直方向上的尺寸,以完全充满它的容器。
  23. fill_horizontal:在需要时增加对象在水平方向上的尺寸,以完全充满它的容器。
  24. center:将对象放置在容器的中心而不改变其尺寸。
  25. fill:增加对象在水平、垂直方向上的尺寸,以完全填满它的容器。

遇到的问题:

解决的方法

在这个问题上刚开始我真的很没办法,因为我觉得我已经设定好了height和wild,不知道控件为什么会聚在一起,后来看到程序的提示,然后自己大体翻译了一下,应该是约束出了问题,然后找了一篇关于这个问题的博客《安卓约束控件(ConstraintLayout)扁平化布局入门》

实验五:

实验要求:

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

  • 构建项目,运行教材相关代码

实验结果截图:

实验中内容:

  1. Android是基于事件的。使用活动中的一个视图进行的用户交互,可能会触发一个事件,包括点击、长按、触碰和按键等等。
  2. 要让程序响应某一个事件,需要为该事件编写一个监听器。也就是要实现嵌入在android.view.View类中的一个接口。比如OnClickListener接口的onClick()方法。
  3. mainActivity:
package com.example.xuzhihan.multclock;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.graphics.Color;
public class MainActivity extends Activity {
int counter = 0;
int[] colors = { Color.BLACK, Color.BLUE, Color.CYAN,
Color.DKGRAY, Color.GRAY, Color.GREEN, Color.LTGRAY,
Color.MAGENTA, Color.RED, Color.WHITE, Color.YELLOW };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
public void changeColor(View view) {
if (counter == colors.length) {
counter = 0;
}
view.setBackgroundColor(colors[counter++]);
}
}

《JAVA程序设计》 20155208 实验四 Android程序设计的更多相关文章

  1. 20165205 2017-2018-2 《Java程序设计》实验四 Android程序设计

    20165205 2017-2018-2 <Java程序设计>实验四 Android程序设计 实验内容 实验四 Android程序设计-1 Android Stuidio的安装测试: 参考 ...

  2. 20155205 《Java程序设计》实验四 Android程序设计

    20155205 <Java程序设计>实验四 Android程序设计 一.实验内容及步骤 (一) Android Stuidio的安装测试 参考<Java和Android开发学习指南 ...

  3. 20155314 2016-2017-2 《Java程序设计》实验四 Android程序设计

    20155314 2016-2017-2 <Java程序设计>实验四 Android程序设计 实验任务 基于Android Studio开发简单的Android应用并部署测试 了解Andr ...

  4. 20165230 《Java程序设计》实验四 Android程序设计实验报告

    20165230 <Java程序设计>实验四 Android程序设计实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:田坤烨 学号:20165230 成绩: 指导 ...

  5. 20155211 《Java程序设计》实验四 Android程序设计

    20155211 <Java程序设计>实验四 Android程序设计 一.实验内容及步骤 1.Android Stuidio的安装测试: 安装 Android Stuidio 完成Hell ...

  6. 2016-2017-2 20155339《 java面向对象程序设计》实验四Android程序设计

    2016-2017-2 20155339< java面向对象程序设计>实验四Android程序设计 实验内容 1.Android Stuidio的安装测试: 参考<Java和Andr ...

  7. 20145234黄斐《java程序设计》实验四—Android程序设计

    实验过程: JDK.Android Studio的安装: 参见卢晓明博客:http://www.cnblogs.com/lxm20145215----/p/5444207.html 注意事项:解决Fe ...

  8. 20155309 《java程序设计》实验四Android程序设计

    任务一: 完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号 完成这个任务,首先需要了解Android应用程序文件的组成: src目录: 在src目录中 ...

  9. 20145213 《Java程序设计》实验四 Android开发基础

    20145213 <Java程序设计>实验四 Android开发基础 说在前面的话 不同以往实验,对于这次实验具体内容我是比较茫然的.因为点我,打开实验四的链接居然能飘出一股熟悉的味道,这 ...

随机推荐

  1. Java.io 包(字节流)

    I/O流概述 在 Java 中,把不同类型的输入.输出源抽象为流(Stream),而其中输入或输出的数据则称为数据流(Data Stream),用统一的接口表示,从而使程序设计简单明了.流是一组有顺序 ...

  2. IOS 缓存思路

    为了提高程序的响应速度,可以考虑使用缓存(内存缓存\硬盘缓存) 第一次请求数据时内存缓存中没有数据硬盘缓存中没有数据 当服务器返回数据时,需要做以下步骤 使用服务器的数据(比如解析.显示) 将服务器的 ...

  3. C# winform 数据库操作知识点总结(干货)

    1.数据库连接及操作 在说数据库操作之前,先说一下数据库连接操作字符串的获取 首先,点击服务器资源管理器,接下来选中数据连接右键点击添加连接,填入你要连接的服务器名称,点击单选框使用SQL Serve ...

  4. POJ 1320 Street Numbers 【佩尔方程】

    任意门:http://poj.org/problem?id=1320 Street Numbers Time Limit: 1000MS   Memory Limit: 10000K Total Su ...

  5. [19/04/28-星期日] GOF23_结构型模式(享元模式)

    一.享元模式(FlyWeight,轻量级) [共享类与非共享类] /*** *FlyweightFactory享元工厂类: 创建并管理享元对象,享元池一般设计成键值对 */ package cn.sx ...

  6. Spring(三)之Ioc、Bean、Scope讲解

    Spring容器是Spring Framework的核心.容器将创建对象,将它们连接在一起,配置它们,并管理从创建到销毁的整个生命周期.Spring容器使用DI来管理组成应用程序的组件.这些对象称为S ...

  7. 错误:maximum number of expressions in a list is 1000

    某一日发现这么如下这么一个错误  --> maximum number of expressions in a list is 1000 原因:因为SQL语句中用到了IN字句,而IN中的元素个数 ...

  8. XMPP备忘笔记

    xmpp中文翻译计划: http://wiki.jabbercn.org/%E9%A6%96%E9%A1%B5 XEP-0004: 数据表单 摘要: 本文定义了一个XMPP扩展协议用于数据表单,可以用 ...

  9. HTML基础代码

    <!--注释内容,在浏览时不会显示--><!DOCTYPE HTML> <!--声明文档类型--><html> <!--头部内容:--> & ...

  10. 数据库中间件mycat安装与使用

    1.下载 # wget http://dl.mycat.io/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz 2.安装 ...