1. 程式人生 > >一個Android程式的檔案說明

一個Android程式的檔案說明

  • MainActivity

是專案的入口,繼承自AppCompatActivity,主要包括onCreate()函式,onCreatOPtionsMenu()函式,onOptionsItemSelected()函式

在這裡插入圖片描述

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}
  1. onCreate()函式在初始化的時候呼叫,通常在該函式裡呼叫setContentView(int)函式來填充螢幕的UI,一般通過findViewById(int)返回xml中定義的檢視或組織的ID,子類在重寫onCreate函式時必須呼叫父類的onCreate()函式,即super.onCreate(),否則會丟擲異常。
  2. onCreatOPtionsMenu()用於初始化初始化選單,其中menu引數就是即將要顯示的Menu例項。
  3. onOptionsItemSelected()函式用於選單項被單擊的呼叫,選單項的監聽方法。

oncreate()函式要配置一些必要的資訊,但是不是所有的事情都能在這裡做,一個Activity

啟動呼叫的第一個函式就是onCreate()函式,它負責Activity啟動時必要的初始化工作,這個函式呼叫完後,這個Activity並不是已經啟動了或者是跳轉到前臺,而是還需要其他的大量工作。在一個Activity真正啟動之前,任何相當耗時的動作都會導致Activity啟動緩慢,特別是onCreate()函式裡面有耗時長的動作可能導致極其差的使用者體驗。

  • activity_main.xml

MainActivity的佈局檔案,主要的空間在content_main.xml中定義。 在這裡插入圖片描述 manifests目錄下的AndroidManifests.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.v8.item1">
    
        <application
            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 android:name=".MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
    
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
        </application>
    
    </manifest>

注意Android的配置檔案採用xml作為描述語言,每個標籤具有不同的含義大部分的配置引數都放在標籤的屬性裡。 AndroidManifests.xml配置檔案的根元素,必須包含

xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.v8.item1"
        
xmlns:android指定Android的名稱空間,package是標準的應用包。