新建APP页面及跳转
创建APP页面主要包含以下三个步骤:
- 在 layout 目录下创建 XML 文件
- 创建与 XML 文件对应的 Java 代码
- 在 AndroidManifest.xml 中注册页面配置
- 添加跳转动作
一、创建 layout 文件
在res -> layout 文件夹右键选择 New -> XML -> Layout XML File 即可新建 XML 文件, 指定文件名之后结果结果如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
可以通过 android:orientation="vertical" 指定页面的排列顺序为‘垂直’; android:gravity="center" 指定居中属性。
添加基本 TextView 组件之后的 XML 内容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/text2"/>
</LinearLayout>
二、创建 Java 文件
在 java -> cn.smile.study 包路径下右键选择 New -> Java Class 即可创建 Java 文件。指定文件明之后结果如下:
package cn.smile.study;
/**
* @author smile-jt
*/
public class StudyActivity {
}
创建 Java 文件之后添加继承关系 AppCompatActivity(androidx.appcompat.app.AppCompatActivity), androidx.appcompat.app.AppCompatActivity 可以替我们处理很多兼容性问题。然后重写 onCreate(Bundle savedInstanceState) 方法, 并且 调用 super.setContentView(R.layout.activity_study)方法。完整代码如下:
package cn.smile.study;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
/**
* @author smile-jt
*/
public class StudyActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.activity_study);
}
}
三、注册配置
打开 AndroidManifest.xml 文件。 在 application 节点, activity 节点之后添加一个新的 activity 节点。完整代码如下
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="cn.smile.study">
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Study"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:name=".StudyActivity"/>
</application>
</manifest>
四、添加跳转动作
由于 APP 打开默认显示 activity_main.xml 页面, 因此我们需要添加跳转动作, 此处使用按钮跳转。
1.修改 activity_main.xml
打开 activity_main.xml 文件, 添加 Button 组件, 完整的 activity_main.xml 如下
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center">
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"/>
<Button
android:id="@+id/toStudy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/to_study"/>
</LinearLayout>
2.修改 MainActivity.java
打开 MainActivity.java 文件, 添加跳转事件, 完整代码如下:
package cn.smile.study;
import android.content.Intent;
import android.widget.Button;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
/**
* @author smile-jt
*/
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView textView = findViewById(R.id.tv);
textView.setText("你好!");
//点击事件
Button toStudy = findViewById(R.id.toStudy);
toStudy.setOnClickListener(v -> {
Intent intent = new Intent();
intent.setClass(MainActivity.this, StudyActivity.class);
startActivity(intent);
});
}
}
五、快速创建 Activity 文件
以上步骤为基础的从零开始创建APP页面, 实际开发中可通过 IDEA 一键创建。选中 java -> cn.smile.study 鼠标右键, 选择 New -> Activity -> Enpty Activity, 然后指定文件名就能快速创建空白页面文件。