7

チェックボックスと ListPreference があります。チェックボックスで ListPreference を無効/有効にしたいと思います。私はたくさん読んで、Javaを使用してのみ可能であることがわかりました(xmlではありません)。それが正しいか?さて、「checkboxPref」(ブール値の真/偽)の値を読み取った後、どうすればよいかわかりません。

SharedPreferences prefs3 = PreferenceManager.getDefaultSharedPreferences(this);
      listener = new SharedPreferences.OnSharedPreferenceChangeListener() {
          public void onSharedPreferenceChanged(SharedPreferences prefs, String listpref) {       

              CheckboxPreference = prefs.getBoolean("checkboxPref", true);
              }   };

      prefs3.registerOnSharedPreferenceChangeListener(listener);

プリファレンス.xml:

<CheckBoxPreference
                        android:title="Notifify"
                        android:defaultValue="true"
                        android:key="checkboxPref" />
            <ListPreference
         android:entries="@array/numberOptions"
         android:entryValues="@array/numberValues"
         android:key="number"
         android:title="Number" />
4

1 に答える 1

32

追加

android:dependency="checkboxPref"

ListPreference XML へ

結果:

<ListPreference
         android:entries="@array/numberOptions"
         android:entryValues="@array/numberValues"
         android:key="number"
         android:title="Number"
         android:dependency="checkboxPref"
 />
于 2012-12-31T12:33:28.940 に答える