Activity的加載模式

Activity的加載模式

android

在Android中,目前Activity共有4種加栽模式:standard、singleTop、singleTask和singlelnstance。


Activity的加載模式

activity


standard加栽模式是Activity的默認加載模式,在加載時會創建一個新的Activity的

實例,類似於調用startActivity()方法時設置Intent的標誌位為Intent.FLAG_ACTIVITY_NEW_TASK。發起standard加載模式的示例如下:

Intent i = newIntent();

i.setFlage(Intent.FLAG_ACTIVITY_NEW_TASK);

startActivity(i);

singleTop加載模式表示當前Activity的實例處於前臺並可視時,該

實例會收到發送過來的Intent消息,其接收方法如下:

protected void onNewlntent(Intent intent){

super.onNewIntent(intent);

...

}

singleTask加載加載模式表示當前Activity找(Task)屮當前

Activity實例運行時,該實例會收到相應的Intent消息,接收方法類似於singleTop加載模式。發

起sing丨eTask加栽模式的

示例如下:

Intent i=new intent。;

i.setPlags(Intent.flag_ACTIVITY_brought_to_front);

startActivity(i);

singlelnstance加載模式表示該Activity以單子模式加載,在當前Activity棧中唯一,接收方法類似於singleTop加載模式。

為了保證Activity在系統運行時能正常加載,必須在AndroidManifest.xml中聲明所有需要加栽的Activity,方法如下:

<activity>

android:label="string/app_name"

android:launchModea=singleInstancen

//忽略重力傳感器和被鍵盤隱藏等變化

android:configChanges="orientation|keyboardHidden">

/<activity>

在通常情況下,當單個應用中包含的文件較多時,通常需創建子文件夾進行區分,如對com.miaozl.test應用而言,將實現Activity的文件放在ui文件夾下

,將實現Service、Provider考的文件放在Service文件夾下,將實現的一些自定義視圖放在view文

件夾下,將實現的一些工具文件放置在util文件夾下。這樣在加載Activity等時,聲明的方法略有不同,具體如:

//注意“ui”前面的表示當前目錄

<activity>

android:label="@string/app_namen

android:configChanges="orientation|keyboardHidden">

/<activity>

本文摘自絡茄網:http://www.luoqie.com


分享到:


相關文章: