gpt4 book ai didi

android - 在摘要中显示 EditTextPreference 的值

转载 作者:可可西里 更新时间:2023-11-01 19:00:53 25 4
gpt4 key购买 nike

<分区>

我正在学习如何在 Android 中进行开发并想进行设置 Activity ,

我的设置 Activity

public class Main extends Activity  {


protected SettingsFragment settingsFragment;


@SuppressLint("NewApi")
@TargetApi(11)
public class SettingsFragment extends PreferenceFragment implements
SharedPreferences.OnSharedPreferenceChangeListener {


@Override
public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
setSummaries();


}


@Override
public void onResume() {
final SharedPreferences sh = getPreferenceManager().getSharedPreferences() ;
super.onResume();
sh.registerOnSharedPreferenceChangeListener(this);

}

@Override
public void onPause() {
final SharedPreferences sh = getPreferenceManager().getSharedPreferences() ;
super.onPause();
sh.unregisterOnSharedPreferenceChangeListener(this);
}

@SuppressLint("NewApi")
public void setSummaries(){

final SharedPreferences sh = getPreferenceManager().getSharedPreferences() ;


//Pref1
Preference stylePref = findPreference("editTextPref");
stylePref.setSummary(sh.getString("editTextPref", ""));

//here the other preferences..
}


@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
if (key.equals("editTextPref")) {
Preference pref = settingsFragment.findPreference(key);
// Set summary to be the user-description for the selected value
pref.setSummary(sharedPreferences.getString(key, ""));

}
//here the others preferences
}
}//End fragment

@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
settingsFragment = new SettingsFragment();
getFragmentManager().beginTransaction()
.replace(android.R.id.content, settingsFragment)
.commit();


}


}

和我的res/preferences.xml 文件

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:title="BTA"
xmlns:android="http://schemas.android.com/apk/res/android">


<EditTextPreference
android:key="editTextPref"
android:title="Numero de telephone"
android:summary="This allows you to enter a string"
android:defaultValue="*"/>

</PreferenceCategory>

</PreferenceScreen>

现在我有了设置 Activity 的 Activity 。但我想在 android:summary 中显示 EditTextPref 的值。我找到了很多主题,但所有功能都已弃用。

编辑:感谢@Ace_McIntosh,我为需要它的人编辑了我的代码,它现在可以工作了。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com