1

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

}
4

0 回答 0