2011-10-06 124 views
2

我試圖創建一個以PreferenceActivity開頭的類的層次結構。Android偏好設置 - 更改它們出現的順序

這個想法是基礎類包含'關於我'按鈕,然後下一個類實現遊戲/應用程序/壁紙的通用首選項,然後下一個類添加每個實際的遊戲/應用程序的具體細節。

這個想法很好用,但是因爲我在每個級別都從XML'添加'首選項,所以他們首先出現在最通用的(最低級)首選項(例如我的'關於'按鈕)。

理想情況下,我想讓他們成爲另一種方式 - 使特定的喜好出現在列表的頂部,通用的喜好出現在底部 - 有什麼辦法可以實現這一點(我已經閱讀了文檔在PreferenceFragments和新的PreferenceHeaders,甚至似乎沒有提供任何東西?)

是否有任何編程方式來移動PreferenceCategorys或PreferenceScreens在整體順序內?

本質上講,當我使用

addPreferencesFromResource(R.xml.clock_settings);

我想有一個

addPreferencesFromResourceAtBottom(R.xml.clock_settings);

回答

6

我越來越好,在這裏回答我自己的問題:)

的解決之道在於android:order XML參數 - 使用與Preference(或PreferenceGroup或子類的話)將東西整理成屏幕上的正確序列!

您也可以使用setOrder()動態更改此選項,但如果它們已被添加到PreferenceGroup,則不會重新排序Preference