我試圖創建一個動態的條目列表的偏好屏幕,當點擊其中的每一個,我有另一個首選項的屏幕。 作爲示例,請考慮一個郵件帳戶列表,並且每個帳戶都有其可用的帳戶設置。嵌套PreferenceScreens下Android動態偏好設置
雖然我可以使用PreferenceScreens
創建嵌套,但如果不爲每個條目創建代碼中的子偏好結構,則無法輕鬆縮放到多個條目。
我在整個Android UI中看到了幾個不同的變體。
有沒有一種建議的方式來創建這樣的結構?
Possibilites包括:
獨立的,獨立的活動
作品,但凌亂在我看來嵌套,代碼創建PreferenceScreens
疼痛的屁股maintainence,這意味着偏好不再存儲爲XML片段嵌套充氣PreferenceScreens
我不能找到一種方法來擴張另一XML文件轉換成的子樹一個「子」,也就是使用setPreferenceScreen()爲每一個
顯示PreferenceScreen我無法找到一個方法來隱藏「模板」PreferenceScreen,它會中斷導航。
示例XML:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/prefs_title">
<EditTextPreference android:key="add_console"
android:title="@string/prefs_add_console"></EditTextPreference>
<PreferenceCategory android:title="@string/prefs_consoles_title"
android:key="list">
<PreferenceScreen android:summary="http://cctv.icode.co.uk/"
android:title="iCode Console">
</PreferenceScreen>
<PreferenceScreen android:summary="http://test.icode.co.uk/"
android:title="Test Console">
</PreferenceScreen>
</PreferenceCategory>
<PreferenceScreen android:title="Console (template)"
android:key="console">
<EditTextPreference android:title="@string/prefs_console_host"
android:summary="@string/prefs_not_set" android:key="host"></EditTextPreference>
<CheckBoxPreference android:title="@string/prefs_console_auth"
android:summary="@string/prefs_console_auth_summary" android:key="auth"></CheckBoxPreference>
<EditTextPreference android:shouldDisableView="true"
android:title="@string/prefs_console_authuser" android:key="authuser"
android:dependency="auth" android:summary="@string/prefs_not_set"></EditTextPreference>
<EditTextPreference android:title="@string/prefs_console_authpass"
android:key="authpass" android:dependency="auth" android:summary="@string/prefs_not_set"></EditTextPreference>
<CheckBoxPreference android:title="@string/prefs_console_pair"
android:summary="@string/prefs_console_pair_summary" android:key="pair"></CheckBoxPreference>
</PreferenceScreen>
</PreferenceScreen>
我想list
下的項目是動態的,並顯示在每個console
偏好。
所有其他的想法歡迎。
謝謝
我不確定我是否理解這個問題。我們已經可以用你想要的(我認爲)只是基本的實現。目前的實施是什麼,你不喜歡? – user432209 2011-01-25 01:20:01
好吧,我想不出如何實現它...:p – Deanna 2011-01-25 06:40:29