Android創(chuàng)建一個(gè)Activity的方法分析
本文實(shí)例講述了Android創(chuàng)建一個(gè)Activity的方法。分享給大家供大家參考,具體如下:
為了創(chuàng)建一個(gè)新的Activity,你需要繼承Activity類,定義UI,實(shí)現(xiàn)功能。新的Activity的最基本的框架代碼如下所示:
package com.paad.myapplication;
import android.app.Activity;
import android.os.Bundle;
public class MyActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
}
}
基本的Activity類代表一個(gè)空的屏幕,它沒(méi)有什么大用,所以,首要的事情就是你用Views和layouts來(lái)填充UI。
Activity的UI都是由Views來(lái)創(chuàng)建的。Views是UI控件,顯示數(shù)據(jù)和提供用戶交互。Android提供了一些layout類,稱作View Groups,它可以容納多個(gè)View來(lái)幫助你設(shè)計(jì)復(fù)雜的UI。
前面講述了View和View Groups,涉及使用以及創(chuàng)建自定義的Views和layouts。
為Activity指定UI,請(qǐng)?jiān)贏ctivity的onCreate方法中調(diào)用setContentView方法。
在這個(gè)代碼片段里,使用了MyView的簡(jiǎn)單實(shí)例來(lái)作為Activity的UI:
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
MyView myView = new MyView(this);
setContentView(myView);
}
多數(shù)情況下,你都想使用較為復(fù)雜的UI設(shè)計(jì)。你可以在代碼里使用View Groups來(lái)創(chuàng)建布局,或者你可以利用標(biāo)準(zhǔn)Android的便利傳遞一個(gè)外部已經(jīng)定義的layout的資源ID,如下面的代碼片段所示:
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
}
為了能在應(yīng)用程序中使用一個(gè)Activity,你需要在manifest中注冊(cè)它。在application節(jié)點(diǎn)添加一個(gè)新的activity標(biāo)簽;activity里包含label、icon、permissions和themes等元數(shù)據(jù)。沒(méi)有相應(yīng)的activity標(biāo)簽的Activity不能被啟動(dòng)。
接下來(lái)的XML片段顯示了如何為我剛創(chuàng)建的MyActivity類添加一個(gè)節(jié)點(diǎn):
<activity android:label="@string/app_name" android:name=".MyActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
在activity標(biāo)簽里,你可以增加intent-filter節(jié)點(diǎn)來(lái)指明你的Activity監(jiān)聽(tīng)和響應(yīng)哪種意圖。每個(gè)Intent Filter可以定義一個(gè)或多個(gè)action和categories。Intent和Intent Filter會(huì)在第5章詳細(xì)描述,但是它對(duì)一個(gè)作為主要啟動(dòng)程序的Activity沒(méi)有什么價(jià)值。它必須包含一個(gè)Intent Filter來(lái)監(jiān)聽(tīng)MAIN動(dòng)作和LAUNCHER種類,如下面高亮度的代碼片段所示:
<activity android:label="@string/app_name" android:name=".MyActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android通信方式總結(jié)》、《Android調(diào)試技巧與常見(jiàn)問(wèn)題解決方法匯總》、《Android開(kāi)發(fā)入門與進(jìn)階教程》、《Android基本組件用法總結(jié)》、《Android布局layout技巧總結(jié)》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
單獨(dú)編譯Android 源代碼中的模塊實(shí)現(xiàn)方法
本文主要講解單獨(dú)編譯Android 源代碼中的模塊,這里對(duì)Android源碼單獨(dú)編譯模塊,做出了詳細(xì)的步驟,希望能幫助研究Android 源代碼的朋友2016-08-08
Flutter Recovering Stream Errors小技巧
這篇文章主要為大家介紹了Flutter Recovering Stream Errors小技巧,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
Android將內(nèi)容分享到QQ和微信實(shí)例代碼
這篇文章主要介紹了Android將內(nèi)容分享到QQ和微信實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-06-06
Android ShimmerLayout實(shí)現(xiàn)微光效果解析
這篇文章主要為大家詳細(xì)介紹了Android ShimmerLayout實(shí)現(xiàn)微光效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
使用Android Studio創(chuàng)建OpenCV4.1.0 項(xiàng)目的步驟
這篇文章主要介紹了使用Android Studio創(chuàng)建OpenCV4.1.0 項(xiàng)目的步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
Android ViewPager實(shí)現(xiàn)Banner循環(huán)播放
這篇文章主要為大家詳細(xì)介紹了Android ViewPager實(shí)現(xiàn)Banner循環(huán)播放,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09

