CheckBoxPreference ve diğer 2 tane daha var: one, Edit Test Pref. ve diğeri de ListBox Pref. 'u nasıl yapabilirim liste kutusu pref ve etkinliğini iptal et düzenleme metni pref. CheckBoxPreference açıldığında?Android CheckBoxPreference: tercih değişikliği ile ilgili diğer tercihleri nasıl devre dışı bırakır ve etkinleştirir
9
A
cevap
31
Bunu public void onSharedPreferenceChanged(final SharedPreferences sharedPreferences, final String key)
geçersiz kılabilirsiniz this question
yinelenen var görünüyor ve key.equals(<Your key for setting>)
ile denilen olsun zaman böyle bir şey yapmak: Ayrıca
boolean isEnabled = sharedPreferences.getBoolean(key, true);
getPreferenceScreen().findPreference("list box preference key").setEnabled(isEnabled);
getPreferenceScreen().findPreference("list box preference key").setEnabled(!isEnabled);
, onCreate()
aynı olması mı Tercihleriniz doğru ilk kurulumunu ekranı .
3
Onay kutusu değerini alabilirsiniz. Ve sonra, tercihleri etkinleştirmek/devre dışı bırakmak için pref.setEnabled(false);
'u kullanabilirsiniz. Etkinleştirmek için, sadece aynı işlevi kullanın ve gerçek değeri koyun.
24
Bir varyant olarak, "bağımlılığı" ListBoxPref içine koymak mümkündür.
<PreferenceCategory
android:key="key1"
android:title="@string/title1">
<SwitchPreference
android:key="parents"
android:summaryOff="@string/do_smthng"
android:summaryOn="@string/do_smthng"
android:switchTextOff="@string/i_am_sleeping"
android:switchTextOn="@string/i_have_free_time" />
<CheckBoxPreference
android:key="baby"
android:dependency="parents"
android:title="@string/basic_habbits"
android:summaryOff="@string/play_with_parents"
android:summaryOn="@string/play_with_parents"
android:defaultValue="true" />
</PreferenceCategory>
Temelde, Muhteşemdin efendim
onlar uyurken ebeveynler =) ile çalamaz bebek! – Mohamed
Tam olarak aradığım şey ... Kodumdaki kullanımı devre dışı bırakmıştım ancak kullanıcıyı devre dışı bırakabildiklerini göstermeleri gerekiyordu. – ShadowZzz