android中如何新建一个activity,《Android Activity》活动的介绍和创建
Activity 是什么
Android 有四大組件:Activity、Service、Broadcast Receiver 和 Content Provider。
Activity,活動,即用來承載用戶界面的容器,Android 四大組件之一。我們在 APP 里面看到的頁面就需要一個 Activity,頁面之間的跳轉(zhuǎn)就是 Activity 之間的跳轉(zhuǎn)。比如,登陸頁面是一個 LoginActivity,注冊頁面是一個 RegisterActivity,當(dāng)我們需要從登陸頁面跳轉(zhuǎn)到注冊頁面時,也就是 LoginActivity 通過 Intent 跳轉(zhuǎn)到 RegisterActivity。
默認(rèn)生成的 MainActivity
我們新建一個 Android 項目時,通過會默認(rèn)生成一個 Activity,叫 MainActivity,這個 MainActivity 就是此時這個項目唯一的頁面,也是 APP 的啟動頁面,不過你可以根據(jù)自己的需求新建其它的 Activity。
為什么說此時的 MainActivity 就是 APP 的啟動頁面呢?我們可以打開 AndroidManifest.xml 文件,任何一個 Activity 都需要在這個文件里面配置,我們會看到這樣的代碼:
package="com.example.skypan.myapplication">
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
package 是程序的包名,在 application 標(biāo)簽中我們看到有 MainActivity,其中:
這幾行代碼的意思是,選擇 MainActivity 作為程序的主頁面,且點擊桌面圖標(biāo)時可以啟動這個頁面,如果你需要把其它的 Activity 作為主頁面,可以把這幾行代碼移過去。
如果我們此時新建了一個其它的 Activity,比如 LoginActivity,那么我們需要在這個文件中注冊:
package="com.example.skypan.myapplication">
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
正如上面所說,每新建一個 Activity 都需要在這個文件中注冊,初學(xué)者容易忘記。
大家有沒有發(fā)現(xiàn)這么一行代碼:android:name=".MainActivity",這是 Activity 的名字,且名字必須是完整的路徑名,.MainActivity 是一種簡寫形式,意思就是“.”前面是包名,只有包名路徑可以用“.”表示,其它的必須寫完整路徑,這里也可以寫成 “com.example.skypan.myapplication. MainActivity”。
我們在這個文件中還可以配置 Activity 的其它屬性,例如啟動模式、橫屏豎屏等等:
android:name=".LoginActivity"
android:launchMode="standard"
android:screenOrientation="portrait">
我們再看看 MainActivity 這個類:
package com.example.skypan.myapplication;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
我們發(fā)現(xiàn) MainActivity 繼承的并不是 Activtiy,而是 AppCompatActivity。這是因為 AppCompatActivity 是 android.support.v7 包下面的兼容類,我們還可能繼承別的以 *Activity 為后綴的類,但是它們的最終父類一定是 Activity。我們查看源碼發(fā)現(xiàn),AppCompatActivity 的繼承關(guān)系如下圖:
MainActivity 里面有一個重要的方法 onCreate,我們大部分事情都在這個方法里面實現(xiàn)。setContentView(R.layout.activity_main) 是設(shè)置 Activity 的布局文件,也就是這個頁面長什么樣子,絕大多數(shù)情況下我們都需要寫上這句,因為我們每個 Activity 基本都需要一個視圖,當(dāng)然,也有不需要的。activity_main 就是這個 Activity 的布局文件,在 res/layout 文件夾下面,是一個 xml 文件,我們通過 R.layout.xxx 來使用。
我們?nèi)绾蝸硇陆ㄒ粋€ Activity
有兩種方式。
第一種比較簡單,直接通過右鍵選項來新建,這種方式會幫我們把 layout 文件,和 AndroidManifest.xml 文件都配置好,一步到位。
點擊 Finish 按鈕,就會幫我們把所有文件都生成好:
第二種方式是我們自己創(chuàng)建各個文件,這兩種方式在實際開發(fā)中都很常用。
1、新建一個類繼承 AppCompatActivity,并重寫 onCreate 方法。
2、在 res/layout 文件夾下新建一個 layout 布局文件。
3、在 Activity 中引入該布局。
4、在 AndroidManifest.xml 文件中注冊該 Activity。
1、新建一個類繼承 AppCompatActivity,并重寫 onCreate 方法。
貼士:填寫 Superclass 的時候我們不需要從 android.support 開始寫起,直接輸入 AppCompat 會有提示讓你選擇的。
點擊 OK 之后我們在 Test2Activity 中重寫 onCreate 方法。同樣,也不用一個字母一個字母的寫,直接在大括號中輸入 onCreate 會有提示讓你選擇的。
2、在 res/layout 文件夾下新建一個 layout 布局文件。
3、在 Activity 中引入該布局。
4、在 AndroidManifest.xml 文件中注冊該 Activity。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的android中如何新建一个activity,《Android Activity》活动的介绍和创建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python attention机制_从
- 下一篇: 网络服务器分为文件服务器通信服务器和,近