这是我的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;
}
});
}