内容正文:
第3章 剖析 Android 应用程序
Android Studio 移动应用开发基础(第 2 版)
目录
3.1 AndroidManifest.xml
3.2 MainActivity.java——Activity
3.3 Android 应用程序资源
3.4 同步练习
3.1 AndroidManifest.xml
典型的 AndroidManifest.xml 文件;
<?xml version="1.0" encoding="utf-8"?>
<manifest>标签:根标签;
<application>标签:APP配置标签;
<activity>标签:配置activity界面;
<intent-filter>标签:配置Activity启动方式;
APP图标及名称配置如下图:
3.2 MainActivity.java——Activity
在启动 Android 应用程序时,Android 平台会先读取 AndroidManifest.xml 文件,从中获取入口 Activity 的相关信息,再启动入口 Activity,用于运行该应用程序;
在 Android 应用程序First 中,由于入口 Activity 是 MainActivity,因此,Android 平台会首先启动并运行 MainActivity,从而显示程序界面;
当 Android 平台启动并运行 MainActivity 时,系统会首先调用 onCreate()方法。需要注意的是,Android 要求,必须先调用父类的 onCreate()方法,再进行自己的初始化工作。在 MainActivity 文件中的 onCreate()方法中,在调用了父类的 onCreate()方法后,调用setContentView(R.layout.activity_main)方法,用于显示 Activity 的主界面;
注意以下代码:
将R.layout.activity_main所表示的界面显示在屏幕上。
参数 R.layout.activity_main 就是界面布局文件,它对应工程的 res/layout 目录下的 activity_main.xml 文件;
activity_main.xml文件中的代码:
使用 ConstraintLayout 布局管理器对组件的布局进行管理,这个布局管理器在水平方向上会占满整个屏幕,代码为 android:layout_width="match_parent",在垂直方向上也会占满整个屏幕,代码为 android:layout_height="match_parent"。
在 Android 应用程序中,可以在任何地方直接使用字符串常量,但是,在 Android 中不建议这么做,Android 建议将字符串常量放到res/values/strings.xml 文件中进行集中管理;
Android 应用程序 = Java 程序代码文件 + 资源文件 + AndroidManifest.xml 文件
3.3 Android 应用程序资源
Android 应用程序资源在 Android 应用程序中起着十分重要的作用。Android 应用程序资源可以是一个文件,如布局文件;也可以是一个值,如字符串常量。将 Android 应用程序资源与Android 应用程序代码分离的好处是,可以直接改变资源的值,而不用修改或编译 Android 应用程序代码;
在 Android 应用程序中,会用到各种各样的资源,包括字符串资源、布局资源、id 资源、图片资源、动画资源等;
3.3.1 字符串资源
Android 建议将字符串常量统一定义到一个或多个 XML 资源文件中;
标准方法:将用到的字符串常量统一定义到 res/values/strings.xml 文件中;
可以将字符串常量定义到多个文件中;
用于定义字符串常量的XML 文件必须存储于工程的 res/values 目录下,而文件名可以根据需要自行定义;
Java 代码中访问 res/values/strings.xml 文件中定义的字符串资源:
R.string.app_name
在 XML 资源文件中,可以使用以下代码访问由app_name 属性定义的字符串资源:
@string/app_name
3.3.2 布局资源
在 Android 中,可以使用 Java 代码直接构建应用程序界面,但通常使用 XML 文件构建应用程序界面。构建应用程序界面的文件称为布局文件;
在创建该布局文件后,可以通过程序代码直接将该界面显示在 Activity 中:
所有的布局文件都必须存储于 res/layout 目录下;
类似于在 Java 代码中引