这是我的 XML 代码,ListPreference 使用 %s 显示已编辑的内容,但使用 EditTextPreference 它不起作用。
<PreferenceCategory android:title="Player 1">
<EditTextPreference android:title="Nickname"
android:key="nickname1"
android:defaultValue="Player1"
android:summary="%s"/>
<ListPreference
android:defaultValue="4"
android:title="Selezione Colore"
android:entries="@array/colorSelect"
android:entryValues="@array/listvalues"
android:key="list_preference_1"
android:summary="%s"/>
</PreferenceCategory>
在 PrefActivity 我尝试过这样的事情,但它不正确
public class PrefFragment extends PreferenceFragment {
EditTextPreference pref1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
pref1 = (EditTextPreference)findPreference("nickname1");
pref1.setSummary(pref1.getText());
pref1.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
public boolean onPreferenceChange(Preference preference, Object newValue) {
pref1.setSummary(pref1.getText());
return true;
}
});
}