如何获取选定的文本和值Android ListPreference

我的ListPreference的XML文件

 <ListPreference android:key="lpBirim" android:title="Birim" android:summary="" android:defaultValue="0" android:persistent="false"/> 

如何获得选定的文本和选定的值?

Solutions Collecting From Web of "如何获取选定的文本和值Android ListPreference"

在您的PreferenceActivity中执行如下操作:

 ListPreference listPreference = (ListPreference) findPreference("lpBirim"); CharSequence currText = listPreference.getEntry(); String currValue = listPreference.getValue(); 

您可以使用此片段获取值:

  SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this); sp.getString("lpBirim","-1") 

看教程

这里是一个例子:

 @Override public boolean onPreferenceChange(Preference preference, Object value) { String textValue = value.toString(); ListPreference listPreference = (ListPreference) preference; int index = listPreference.findIndexOfValue(textValue); CharSequence[] entries = listPreference.getEntries(); if(index >= 0) Toast.makeText(preference.getContext(), entries[index], Toast.LENGTH_LONG); return true; } 
  • 索引包含被点击的项目的索引
  • textValue是选定的值
  • 条目[索引]是选定的文本

你可以使用findPreference()来获得一个ListPreference ,它有你需要的所有方法。 为了使它工作,您需要首先使用或扩展PreferenceFragment