Android開發中Activity屬性設定小結_Android

來源:互聯網
上載者:User

Activity是Android組件中最基本也是最為常見用的四大組件之一,在 android開發中 ,運用極為廣泛,作為初學者需要熟練掌握,下例為Activity屬性常用設定。

android:allowTaskReparenting
是否允許activity更換從屬的任務,比如從簡訊息任務 切換到瀏覽器任務。

android:alwaysRetainTaskState
是否保留狀態不變, 比如切換回home, 再從新開啟, activity處於最後的狀態

android:clearTaskOnLanunch
比如 P 是 activity, Q 是被P 觸發的 activity, 然後返回Home, 從新啟動 P, 是否顯示 Q

android:configChanges
當配置list發生修改時, 是否調用 onConfigurationChanged() 方法 比如 "locale|navigation|orientation".

android:enabled
activity 是否可以被執行個體化,

android:excludeFromRecents
是否可被顯示在最近開啟的activity列表裡

android:exported
是否允許activity被其它程式調用

android:finishOnTaskLaunch
是否關閉已開啟的activity當使用者重新啟動這個任務的時候

android.icon

android:label

android:launchMode
activity啟動方式, "standard" "singleTop" "singleTask" "singleInstance"
其中前兩個為一組, 後兩個為一組


android:multiprocess
允許多進程

android:name
activity的類名, 必須指定

androidnHistory
是否需要移除這個activity當使用者切換到其他螢幕時。 這個屬性是 API level 3 中引入的

android:permission

android:process
一 個activity運行時所在的進程名,所有程式組件運行在應用程式預設的進程中,這個進程名跟應用程式的包名一致。中的元素process屬效能夠為所有組件設定一個新的預設值。但是任何組件都可以覆蓋這個預設值,允許你將你的程式放在多進程中運行。 如果這個屬性被分配的名字以:開頭,當這個activity運行時, 一個新的專屬於這個程式的進程將會被建立。 如果這個進程名以小寫字母開頭,這個activity將會運行在全域的進程中,被它的許可所提供。

android:screenOrientation
activity顯示的模式, "unspecified" 預設值 "landscape" 風景畫模式,寬度比高度大一些 "portrait" 肖像模式, 高度比寬度大。 "user" 使用者的設定 "behind" "sensor" "nosensor"

android:stateNotNeeded
是否 activity被銷毀和成功重啟並不儲存狀態

android:taskAffinity
activity的親屬關係, 預設情況同一個應用程式下的activity有相同的關係

android:theme
activity的樣式主題, 如果沒有設定,則activity的主題樣式從屬於應用程式, 參見元素的theme屬性

android:windowSoftInputMode
activity主視窗與軟鍵盤的互動模式, 自從API level 3 被引入
活動的主視窗如何與包含螢幕上的軟鍵盤視窗互動。這個屬性的設定將會影響兩件事情:
1>     軟鍵盤的狀態——是否它是隱藏或顯示——當活動(Activity)成為使用者關注的焦點。
2>     活動的主視窗調整——是否減少活動主視窗大小以便騰出空間放軟鍵盤或是否當使用中視窗的部分被軟鍵盤覆蓋時它的內容的當前焦點是可見的。
它的設定必須是下面列表中的一個值,或一個”state…”值加一個”adjust…”值的組合。在任一組設定多個值——多個”state…”values,例如&mdash有未定義的結果。各個值之間用|分開。例如: <activity android:windowSoftInputMode="stateVisible|adjustResize" . . . >
在這設定的值(除"stateUnspecified"和"adjustUnspecified"以外)將覆蓋在主題中設定的值
值 描述

"stateUnspecified" 軟鍵盤的狀態(是否它是隱藏或可見)沒有被指定。系統將選擇一個合適的狀態或依賴於主題的設定。這個是為了軟體盤行為預設的設定。

"stateUnchanged" 軟鍵盤被保持無論它上次是什麼狀態,是否可見或隱藏,當主視窗出現在前面時。

"stateHidden" 當使用者選擇該Activity時,軟鍵盤被隱藏——也就是,當使用者確定導航到該Activity時,而不是返回到它由於離開另一個Activity。

"stateAlwaysHidden" 軟鍵盤總是被隱藏的,當該Activity主視窗擷取焦點時。

"stateVisible" 軟鍵盤是可見的,當那個是正常合適的時(當使用者導航到Activity主視窗時)。

"stateAlwaysVisible" 當使用者選擇這個Activity時,軟鍵盤是可見的——也就是,也就是,當使用者確定導航到該Activity時,而不是返回到它由於離開另一個Activity。

"adjustUnspecified" 它不被指定是否該Activity主視窗調整大小以便留出軟鍵盤的空間,或是否視窗上的內容得到螢幕上當前的焦點是可見的。系統將自動選擇這些模式中一種主要依賴於是否視窗的內容有任何布局視圖能夠滾動他們的內容。如果有這樣的一個視圖,這個視窗將調整大小,這樣的假設可以使滾動視窗的內容在一個較小的地區中可見的。這個是主視窗預設的行為設定。

"adjustResize" 該Activity主視窗總是被調整螢幕的大小以便留出軟鍵盤的空間。

"adjustPan" 該Activity主視窗並不調整螢幕的大小以便留出軟鍵盤的空間。相反,當前視窗的內容將自動移動以便當前焦點從不被鍵盤覆蓋和使用者能總是看到輸入內容的部分。這個通常是不期望比調整大小,因為使用者可能關閉軟鍵盤以便獲得與被覆蓋內容的互動操作。

以上所述就是本文的全部內容了,希望大家能夠喜歡。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.