最初に設定を取得してから、追加/削除します。
キーは、preference.xml ファイル (または名前を付けたもの) から取得されます。
<com.test.testing.PreferenceChangeColor
android:key="color_preference"
android:title="Line Color"
android:summary="Change the color of your lines"
android:defaultValue="-16555568" />
次に、カスタム設定アクティビティの onCreate() メソッドで、次のようにします。
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.game_preferences);
userColorPreference = (Preference)getPreferenceScreen().findPreference("color_preference");
プライベート設定変数を忘れないでください:
private Preference userColorPreference;
onSharedPreferenceChanged() メソッドで、設定を更新するために「ハック」する必要があります。
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
if (key.equals("color_preference")) {
getPreferenceScreen().addPreference(userColorPreference);
getPreferenceScreen().removePreference(userColorPreference);
}
}
これが私が思いついたハックソリューションです。
誰でもこれを行う正しい方法を知っていますか?