पर वरीयताओं की एक गतिशील सूची के तहत नेस्टेड वरीयतास्क्रीन, मैं प्रविष्टियों की एक गतिशील सूची के साथ एक प्राथमिकता स्क्रीन बनाने की कोशिश कर रहा हूं, और उनमें से प्रत्येक पर क्लिक करते समय, मेरे पास प्राथमिकताओं की एक और स्क्रीन है। उदाहरण के तौर पर, मेल खातों की एक सूची के बारे में सोचें और प्रत्येक व्यक्ति को अपनी खाता सेटिंग उपलब्ध हो।एंड्रॉइड
जबकि मैं घोंसला बना सकता हूं, मैं केवल PreferenceScreens
का उपयोग करना चाहता हूं, इसे प्रत्येक के लिए कोड में उप प्राथमिकता संरचना बनाने के बिना आसानी से एकाधिक प्रविष्टियों तक स्केल नहीं किया जा सकता है।
मुझे एंड्रॉइड यूआई में कई अलग-अलग बदलाव दिखाई देते हैं।
क्या इस तरह की संरचना बनाने के लिए एक अनुशंसित तरीका है?
possibilites में शामिल हैं:
अलग, स्वतंत्र गतिविधियों
वर्क्स लेकिन मेरी राय में गन्दा हैनेस्ट, कोड बनाया PreferenceScreens रखरखाव के लिए पिछवाड़े में
दर्द और यह वरीयताओं का मतलब अब एक्सएमएल टुकड़े के रूप में संग्रहीत नहीं हैंनेस्टेड, बढ़ाए गए वरीयताओं
मैंएक "उप" PreferenceScreen कि हर एक
के लिए setPreferenceScreen() का उपयोग कर दिखाया गया है एक उप पेड़ में एक और एक्सएमएल फ़ाइल का विस्तार करने के लिए एक तरह से मैं एक तरह से छिपाने के लिए नहीं मिल सकता है नहीं मिल सकता है "टेम्पलेट" वरीयता स्क्रीन और यह नेविगेशन तोड़ता है।
नमूना 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
अच्छी तरह से, मैं इसे अभी तक कार्यान्वित करने का तरीका नहीं समझ सकता ...: p – Deanna
मुझे पता है कि मैं प्रत्येक उप पेड़ को डायनाइम प्रविष्टियों के नीचे कोड में जोड़ सकता हूं, लेकिन उम्मीद कर रहा था कि मैं एक एक्सएमएल को बढ़ाकर उप पेड़ जोड़ सकता हूं फ़ाइल। – Deanna