2

我正在开发一个使用 Preference Fragment 的 android 应用程序。在那个首选项(设置)片段中,我有两个 EditTextPreference 来更改名字和姓氏。我需要的是,当我第一次加载首选项片段时,我想向 EditTextPreference 显示当前的名字和姓氏,以便用户可以查看他们当前的名字和姓氏,并可以据此进行相应的更改。

4

1 回答 1

2

当您当时在 xml 文件中创建 edittext Preference 时,您可以设置默认值和摘要。

<EditTextPreference
             ....
             android:key="key_firstname"
             android:defaultValue="Lincy"
             android:summary="Lincy"/>   

您可以为名字和姓氏编辑文本首选项设置此项。当您第一次加载首选项活动时,它将显示值。

现在你可以在你的偏好片段中使用下面的代码,这样每当你更新 edittext 偏好值时,它总是会在摘要中显示最新的值。

EditTextPreference firstname =  (EditTextPreference) findPreference("key_firstname");
firstname .setSummary(sharedPreferences.getString("key_firstname","Lincy"));

EditTextPreference lastname=  (EditTextPreference) findPreference("key_lastname");
lastname.setSummary(sharedPreferences.getString("key_lastname","Laiju"));

要设置 edittext Preference 的值,请使用以下代码。

SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit();
editor.putString("key_firstname","userfirstname"); // You can pass you username value here
editor.putString("key_lastname","userlastname"); // You can pass you username value here
editor.commit();
于 2015-03-20T11:34:28.120 回答