私はListPreferenceを持っています。例えば、5つのオプションがあり、ユーザーがそれを選択すると、この値の1つをSharedPreferencesに保存します。どうしたらいいですか?ListPreferenceからどのように選択するのですか?
btw。私はSharedPreferencesに値を保存する方法を知っていますが、ユーザーがそれらの値を選択したときに値を取得する方法はわかりません。
私はListPreferenceを持っています。例えば、5つのオプションがあり、ユーザーがそれを選択すると、この値の1つをSharedPreferencesに保存します。どうしたらいいですか?ListPreferenceからどのように選択するのですか?
btw。私はSharedPreferencesに値を保存する方法を知っていますが、ユーザーがそれらの値を選択したときに値を取得する方法はわかりません。
OnPreferenceChangeListener listener = new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
// newValue is the value you choose
return true;
}
};
listPreference.setOnPreferenceChangeListener(listener);
xmlファイルには、あなたのリストにSharedPreferencesキーを提供します。
<ListPreference
android:key="SHARED_PREFS_KEY"
...
/>
たびに、ユーザは、それがデフォルトのSharedPreferences
私はこのような鉱山へのアクセスに保存されているリストから項目を選択して..私のpreference.xmlファイルで
以下の例を参照してください。
<ListPreference
android:key="SQS_ENDPOINT"
android:dialogTitle="Choose an option please"
android:entries="@array/sqsItems"
android:entryValues="@array/sqsValues"
android:title="SQS Endpoints" >
</ListPreference>
私string.xmlを:
<string-array name="sqsItems">
<item>US East (N. Virginia)</item>
<item>Asia Pacific (Singapore)</item>
<item>Asia Pacific (Tokyo)</item>
</string-array>
<string-array name="sqsValues">
<item>sqs.us-east-1.amazonaws.com</item>
<item>sqs.ap-southeast-1.amazonaws.com</item>
<item>sqs.ap-northeast-1.amazonaws.com</item>
</string-array>
次に、どこからでもこのように選択した値が得られます。
SharedPreferences pref = PreferenceManager
.getDefaultSharedPreferences(context);
String END_POINT = pref.getString("SQS_ENDPOINT", "");