Android開發——關於onCreate的解讀

來源:互聯網
上載者:User

 

當我們建立好一個Android項目後,開啟src下的java檔案時,我們會看到已經寫好的類,但你知道這些都是什麼含義嗎?

         題外話:今天晚上陳老師給串講了一下Android入門,有一個環節,我記得是這樣問的:在AndroidManifest.xml檔案中的<intent-filter>元素中有這麼兩句:

<intent-filter>

     <action android:name="android.intent.action.MAIN"/>

     <category android:name="android.intent.category.LAUNCHER"/>

</intent-filter>

你知道中間的兩句話都是什麼含義嗎? www.2cto.com

當寫好的應用發布到手機上之後,當雙擊”抽屜“裡該應用的表徵圖時,系統會將這個點擊時間封裝成一個Intent,該Intent包含兩個參數,如上所述的兩個參數被傳遞給應用之後,在應用的功能資訊清單檔中尋找與該意圖匹配的意圖過濾器,如果匹配成功,找到相匹配的意圖過濾器所在的Activity元素,再根據<activity>元素的”name“屬性來尋找其對應的Activity類。接著Android作業系統建立該Activity類的執行個體對象,對象建立完成之後,會執行到該類的onCreate方法,此onCreate方法是重寫父類Activity的onCreate方法而實現的。onCreate方法用來初始化Activity執行個體對象。如下是helloWorld.java類中的onCreate方法的代碼:

public void onCreate (Bundle savedInstanceState){

       super.onCreate(savedInstanceState);

       setContentView(R.layout.main);

}

其中super.onCreate(savedInstanceState)的作用是調用其父類Activity的onCreate方法來實現對介面的圖畫繪製工作。在實現自己定義的Activity子類的onCreate方法時一定要記得調用該方法,以確保能夠繪製介面。

       setContentView(R.layout.main)的作用是載入一個介面。該方法中傳入的參數是”R.layout.main“,其含義為R.java類中靜態內部類layout的靜態常量main的值,而改值是一個指向res目錄下的layout子目錄下的main.xml檔案的標識符。因此代表著顯示main.xml所定義的畫面

摘自 yangbo_hbzjk的專欄

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.