0
EditTextPreferenceの値を要約に入れようとしています。誰かが私にこれを行う方法を教えてもらえますか?私のOnSharedPreferenceChangeListenerが動作しているようには見えません。PreferenceFragmentCompatが環境設定の変更を認識しない
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceFragmentCompat;
import android.util.Log;
public class OptionsFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener{
private SharedPreferences sharedPreferences;
@Override
public void onCreatePreferences(Bundle savedInstanceState, String s) {
// Adds preferences. See xml.preferences.
addPreferencesFromResource(R.xml.preferences);
}
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
if (key.equals("user_id")) {
Log.v("user_id", "is found");
Preference connectionPref = findPreference(key);
// Set summary to be the user-description for the selected value
connectionPref.setSummary(sharedPreferences.getString(key, ""));
}
}
}
マイあるpreferences.xml:
<?xml version="1.0" encoding="utf-8"?><PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<CheckBoxPreference
android:key="gps_sync"
android:title="@string/gps_sync"
android:summary="@string/gps_sync_summ"
android:defaultValue="true"/>
<EditTextPreference
android:key="user_id"
android:title="@string/user_id"
android:summary=" "/>
あなたが役に立った場合は、正しい答えとして回答を受け入れることを検討してください – SoroushA