27

XML で定義された Android 設定のデフォルト値を取得するにはどうすればよいですか? コードと設定 XML の両方でデフォルト値の定義を繰り返したくありません。

4

3 に答える 3

64

/values/bool.xmlリソース ( )でデフォルト値を定義できます。

<resources>
    <bool name="mypreference_default">true</bool>
</resources>

の値を使用しますpreferences.xml

<CheckBoxPreference
    android:defaultValue="@bool/mypreference_default"
    android:key="mypreference"
    android:title="@string/mypreference_title" />

次に、コードで使用します。

SharedPreferences p = PreferenceManager.getDefaultSharedPreferences(context);
Boolean value = context.getResources().getBoolean(R.bool.mypreference_default);
Boolean b = p.getBoolean("mypreference", value);
于 2012-01-07T14:17:45.553 に答える
13

最初に、設定 XML ファイルでデフォルト値を定義する必要があります。次に、次を呼び出して、メインのアクティビティで設定にデフォルト値を設定できます。

PreferenceManager.setDefaultValues(this, R.xml.preference, false);

いくつかの設定を取得する必要がある場合は、次のように呼び出します。

int value = prefs.getInt("key", null);

あなたの好みが移入されているので、あなたはnull価値を得ることはありません.

于 2010-05-21T11:11:21.670 に答える