Android编程权威指南 第3版 第1章 学习总结
代码来源于《Android编程权威指南》第三版
14-4F-8A-A2-D1-90 60 2
简介
GeoQuiz能给出一道道地理知识问题,用户点击TRUE或FALSE按钮来回答屏幕上的问题,GeoQuiz即时作出反馈。
GeoQuiz应用由一个activity和一个布局( layout)组成。
activity是Android SDK中Activity类的-一个实例, 负责管理用户与应用界面的交互。
应用的功能是通过编写Activity子类来实现的。对于简单的应用来说,一个Activity子类可能就够了,而复杂的应用则会有多个。
GeoQuiz是个简单应用,因此它只有一个名叫MainActivity的Activity子类管理着用户界面。
布局定义了一系列用户界面对象以及它们显示在屏幕上的位置。组成布局的定义保存在XML文件中。每个定义用来创建屏幕上的- -个对象,如按钮或文本信息。GeoQuiz应用包含-一个名叫activity_main.xml的布局文件。该布局文件中的XML标签定义了用户界面。
具体流程
打开AS,新建一个项目,并选择Empty Activity
设置项目的名称,并将语言改为Java
等待加载完成后,系统就会自动打开MainActivity.java和activity_main.xml文件
点进activity_main.xml,点击右上角的Code,转到代码界面
不过默认组件并不是我们需要的, MainActivity的用户界面需要下列组件:
一个垂直LinearLayout组件;
一个TextView组件;
一个水平LinearLayout组件;
两个Button组件。
将代码修正后,会发现有三个错,我们先不管它
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="24dp"
android:text="@string/question_text" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/true_button" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/false_button" />
</LinearLayout>
</LinearLayout>
Android→app→res→values→strings.xml
每个项目都包含一个默认字符串资源文件strings.xml。在项目工具窗口中,找到app