成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Manifest.xml下的一些屬性定義和用法

NickZhou / 1583人閱讀

摘要:的是由特性定義的。的是通過讀取根的決定。當(dāng)這個值為時,可能會在一些情形下參考特性清除的,但不總是。和為第一組,和為第二組。中的元素屬性能夠為所有組件設(shè)定一個新的默認(rèn)值。

android:allowTaskReparenting
用法是否允許activity更換從屬的任務(wù),
比如從短信息任務(wù) 切換到瀏覽器任務(wù)。
用來標(biāo)記Activity能否從啟動的Task移動到有著affinity的Task(當(dāng)這個Task進(jìn)入到前臺時)——“true”,表示能移動,“false”,表示它必須呆在啟動時呆在的那個Task里。
如果這個特性沒有被設(shè)定,設(shè)定到元素上的allowTaskReparenting特性的值會應(yīng)用到Activity上。默認(rèn)值為“false”。
一般來說,當(dāng)Activity啟動后,它就與啟動它的Task關(guān)聯(lián),并且在那里耗盡它的整個生命周期。當(dāng)當(dāng)前的Task不再顯示時,你可以使用這個特性來強(qiáng)制Activity移動到有著affinity的Task中。典型用法是:把一個應(yīng)用程序的Activity移到另一個應(yīng)用程序的主Task中。
例如,如果e-mail中包含一個web頁的鏈接,點擊它就會啟動一個Activity來顯示這個頁面。這個Activity是由Browser應(yīng)用程序定義的,但是,現(xiàn)在它作為e-mail Task的一部分。如果它重新宿主到Browser Task里,當(dāng)Browser下一次進(jìn)入到前臺時,它就能被看見,并且,當(dāng)e-mail Task再次進(jìn)入前臺時,就看不到它了。
Actvity的affinity是由taskAffinity特性定義的。Task的affinity是通過讀取根Activity的affinity 決定。因此,根據(jù)定義,根Activity總是位于相同affinity的Task里。由于啟動模式為“singleTask”和 “singleInstance”的Activity只能
位于Task的底部,因此,重新宿主只能限于“standard”和“singleTop”模式。

android:alwaysRetainTaskState
用法
用來標(biāo)記Activity所在的Task的狀態(tài)是否總是由系統(tǒng)來保持——“true”,表示總是;“false”,表示在某種情形下允許系統(tǒng)恢復(fù)Task 到它的初始化狀態(tài)。默認(rèn)值是“false”。這個特性只針對Task的根Activity有意義;對其它Activity來說,忽略之。

一般來說,特定的情形如當(dāng)用戶從主畫面重新選擇這個Task時,系統(tǒng)會對這個Task進(jìn)行清理(從stack中刪除位于根Activity之上的所有Activivity)。典型的情況,當(dāng)用戶有一段時間沒有訪問這個Task時也會這么做,例如30分鐘。
然而,當(dāng)這個特性設(shè)為“true”時,用戶總是能回到這個Task的最新狀態(tài),無論他們是如何啟動的。這非常有用,例如,像Browser應(yīng)用程序,這里有很多的狀態(tài)(例如多個打開的Tab),用戶不想丟失這些狀態(tài)。

android:clearTaskOnLanunch

用法

用來標(biāo)記是否從Task中清除所有的Activity,除了根Activity外(每當(dāng)從主畫面重新啟動時)——“true”,表示總是清除至它的根 Activity,“false”表示不。默認(rèn)值是“false”。這個特性只對啟動一個新的Task的Activity(根Activity)有意義; 對Task中其它的Activity忽略。

當(dāng)這個值為“true”,每次用戶重新啟動這個Task時,都會進(jìn)入到它的根Activity中,不管這個Task最后在做些什么,也不管用戶是使用 BACK還是HOME離開的。當(dāng)這個值為“false”時,可能會在一些情形下(參考alwaysRetainTaskState特性)清除Task的 Activity,但不總是。

假設(shè),某人從主畫面啟動了Activity P,并從那里遷移至Activity Q。接下來用戶按下HOME,然后返回Activity P。
一般,用戶可能見到的是Activity Q,因為它是P的Task中最后工作的內(nèi)容。然而,如果P設(shè)定這個特性為“true”,當(dāng)用戶按下HOME并使這個Task再次進(jìn)入前臺時,其上的所有的 Activity(在這里是Q)都將被清除。因此,當(dāng)返回到這個Task時,用戶只能看到P。

如果這個特性和allowTaskReparenting都設(shè)定為“true”,那些能重新宿主的Activity會移動到共享affinity的Task中;
剩下的Activity都將被拋棄,如上所述。

android:configChanges

當(dāng)配置list發(fā)生修改時, 是否調(diào)用 onConfigurationChanged() 方法 比如 "locale|navigation|orientation".

舉例:在按下power鍵時,直接在應(yīng)用程序里onPause處理就好。當(dāng)app是豎屏?xí)r,這樣處理沒問題。但是當(dāng)app是橫屏?xí)r,按下power鍵,app會強(qiáng)制回到豎屏,并且會重新調(diào)用activity的onCreate。很多時候這不是預(yù)期結(jié)果,所以就會用到
android:configChanges。

在配置文件里設(shè)置android:configChanges=”keyboardHidden|orientation”,這樣在屏幕方向改變的時候就不會重新調(diào)用activity的onCreate()方法,而是調(diào)用onConfigurationChanged(),然后在activity里面重在下。

@Override
public void onConfigurationChanged(Configuration newConfig){
         super.onConfigurationChanged(newConfig);
         if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){
                   //橫向
         }else{
                   //豎向
         }
}

android:enabled

     activity 是否可以被實例化

     用法:

android:excludeFromRecents

     是否可被顯示在最近打開的activity列表里

     用法:

android:exported

     是否允許activity被其它程序調(diào)用

android:finishOnTaskLaunch

用來標(biāo)記當(dāng)用戶再次啟動它的Task(在主畫面選擇這個Task)時已經(jīng)存在的Activity實例是否要關(guān)閉(結(jié)束)——“true”,表示應(yīng)該關(guān)閉,“false”表示不關(guān)閉。默認(rèn)值是“false”。

如果這個特性和allowTaskReparenting都設(shè)定為“true”,這個特性勝出。Activity的affinity忽略。這個 Activity不會重新宿主,但是會銷毀。

android.icon

     用法:,加在應(yīng)用程序圖標(biāo)

android:label

     定義了每個title欄的名稱,但是優(yōu)先級低于activity中的setTitle()

android:launchMode

用于指示Activity如何啟動。這里有四種模式,與Intent對象中的Activity Flags(FLAG_ACTIVITY_*變量)共同作用,
來決定Activity如何啟動來處理Intent。它們是:

      "standard"

      "singleTop"

      "singleTask"

      "singleInstance"

      默認(rèn)模式是“standard”。

  “standard”和“singleTop”為第一組,“singleTask”和“singleInstance”為第二組。

第一組可以被實例化很多次。這些實例可以屬于任何task并且可以位于activity stack的任何位置。典型的情況是,
它們會進(jìn)入調(diào)用startActivity()的Task(除非Intent對象包含 FLAG_ACTIVITY_NEW_TASK標(biāo)志,在這種情況下會選擇一個不同的Task——參考taskAffinity特性)。

android:multiprocess

允許多進(jìn)程

android:name

activity的類名, 必須指定

android:onHistory

是否需要移除這個activity當(dāng)用戶切換到其他屏幕時。 這個屬性是 API level 3 中引入的

android:permission

android:process

一個activity運行時所在的進(jìn)程名,所有程序組件運行在應(yīng)用程序默認(rèn)的進(jìn)程中,這個進(jìn)程名跟應(yīng)用程序的包名一致。
中的元素process屬性能夠為所有組件設(shè)定一個新的默認(rèn)值。但是任何組件都可以覆蓋這個默認(rèn)值,允許你將你的程序放在多進(jìn)程中運行。 如果這個屬性被分配的名字以:開頭,當(dāng)這個activity運行時, 一個新的專屬于這個程序的進(jìn)程將會被創(chuàng)建。如果這個進(jìn)程名以小寫字母開頭,這個activity將會運行在全局的進(jìn)程中,被它的許可所提供。

android:screenOrientation

activity顯示的模式, "unspecified" 默認(rèn)值 "landscape" 風(fēng)景畫模式,寬度比高度大一些 "portrait" 肖像模式, 高度比寬度大。 "user" 用戶的設(shè)置 "behind" "sensor" "nosensor"

android:stateNotNeeded

是否 activity被銷毀和成功重啟并不保存狀態(tài)

android:taskAffinity

activity的親屬關(guān)系, 默認(rèn)情況同一個應(yīng)用程序下的activity有相同的關(guān)系

android:theme

activity的樣式主題, 如果沒有設(shè)置,則activity的主題樣式從屬于應(yīng)用程序, 參見元素的theme屬性

android:windowSoftInputMode

activity主窗口與軟鍵盤的交互模式, 自從API level 3 被引入

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/66611.html

相關(guān)文章

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<