我正在开发一个Android应用程序,我正在使用Preference Fragment。在该Preference(For Settings)片段中,我有两个EditTextPreference来更改名字和姓氏。我需要的是,当我第一次加载首选项片段时,我想显示EditTextPreference的当前firstname和lastname,以便用户可以查看它们当前的firstname和lastname,并且可以根据它进行相应的更改。
答案 0 :(得分:1)
当您在xml文件中创建edittext首选项时,您可以设置默认值和摘要。
<EditTextPreference
....
android:key="key_firstname"
android:defaultValue="Lincy"
android:summary="Lincy"/>
您可以为名字和姓氏edittext首选项设置此项。它会在您第一次加载首选项活动时显示值。
现在,您可以在首选项片段中使用以下代码,这样每当您更新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首选项的值使用以下代码。
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();