20155328 实验四 Android程序设计

第24章 初识Android

提交点1:完成HelloWorld并显示自己的学号

安装Android Studio后,创建了属于自己的Project(用驼峰命名法命名),Project中含有两个主要的结点,app和gradle scripts。

app节点下有:

  • manifests:其中包含一个叫AndroidManifest.xml的清单文件,包含一个或多个activity元素,描述了app中的活动。主活动充当应用程序的入口点。

  • java:包含了所有的java应用程序和测试类。

  • res:drawable中包含用于各种屏幕分辨率的图像,layout包含布局文件,menu包含了菜单文件,values包含了字符串和其他值。

在创建完自己的项目,配置好SDK及虚拟安卓机器后,要完成HelloWorld并显示自己的学号,只需将activity_main.xml中的android:text="Hello World!"改成android:text="Hello World!Hello 20155328!"即可。

在虚拟机器上运行APP如图所示:

第25章 活动

提交点2:创建ThirdActivity并显示自己的学号,修改代码让MainActivity启动ThirdActivity

调用ThirdActivity,需在AndroidManifest.xml中再添加一个activity...>,并建立对应的ThirdActivity.java,还需修改MainActivity,让其启动ThirdActivity.

运行截图如下:

第26章 UI组件

提交点3:修改代码让Toast消息中显示自己的学号信息

使用UI工具所做的都会反映到布局文件中,以XML元素的形式体现出来。

activity_main代码如下:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.lxkj.commitzyq3.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="20155328"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintHorizontal_bias="0.318"
        app:layout_constraintVertical_bias="0.226" />
    <Button
        android:id="@+id/btn1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        tools:layout_editor_absoluteY="16dp"
        tools:layout_editor_absoluteX="5dp" />

</android.support.constraint.ConstraintLayout>

MainActivity.java代码如下:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btnshow1 = (Button) findViewById(R.id.btn1);
        btnshow1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast toast = Toast.makeText(MainActivity.this, "20155328", Toast.LENGTH_LONG);
                toast.show();

            }
        });
    }

运行结果如图:

第27章 布局

提交点4:修改布局让P290页的界面与教材不同

运行截图如下:

第28章 监听器

提交点5:构建项目,运行教材相关代码

运行截图如下:

二、实验中遇到的问题及解决办法

  • 问题1:第一次创建Project时,gradle building速度过慢。

  • 解决方法:虽然Android Studio不是FQ下载的,但gradle的下载依然很慢,如果事先下载好gradle就好了。在 C:\Users\【你当前的 用户名】 .gradle中打开wrapper文件夹中的dists文件夹,里面只有一个叫gradle-3.3-all的文件夹,说明gradle的版本号是3.3,就在官网上找到对应版本号的gradle压缩文件并下载,即下载了gradle-3.3-all.zip,下载之后再次打开project,速度就快了很多。

  • 问题2:在写完代码后想用虚拟机器运行一下,结果出现下图所示的错误提示:

  • 解决方法:错误提示说的是电脑的BIOS配置出了错。重启电脑,在开机时按F2进入到BIOS配置中,选择config→CPU→Intel→Virtualization Technology,将这个选项开启。开机后再打开Android Studio并用虚拟机器运行app,就没有问题了。

  • 问题3:在运行app时出现错误提示:error while lauching activity,如图:

  • 解决方法:在Build选项卡中clean一下project,再重启项目即可。

三、实验时间

|步骤 |耗时 |百分比 |
| -------- | :----------------😐
|需求分析 |30min | 17.65% |
|设计 |30min | 17.65% |
|代码实现 |25min | 14.71% |
|测试 | 50min | 29.41% |
|分析总结 |35min | 20.59% |

四、实验感想

这次实验是第一次使用Android Studio来进行开发,虽然过程中有很多波折,在用虚拟机器运行app时也比较慢,但能在虚拟机器上看见自己的小程序运行了还是很开心。

参考资料: