从MainActivity获取当前的ListPreference标签

时间:2014-12-17 08:11:43

标签: android settings listpreference

如下所述: Get Key, not value, of the ListPreference selection - Possible? 和许多其他地方一样,从PreferenceActivity访问ListPreferences标签非常容易。

我需要做的是阅读与主要活动中选择的当前对应的标签。 但我无法找到办法。

例如,在我的主要活动中我有

SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);

我想使用类似的东西:

ListPreference listPreference = (ListPreference) settings.findPreference("list_of_countries");

然后处理它以获取当前值和标签。

更新01

我试图以另一种方式检索摘要(我的示例中的国家/地区的名称)值,我需要告诉客户他选择了什么。我无法给他代码!

private static Preference.OnPreferenceChangeListener sBindPreferenceSummaryToValueListener = new Preference.OnPreferenceChangeListener() {
    @Override
    public boolean onPreferenceChange(Preference preference, Object value) {
        String stringValue = value.toString();
        String stringSummary = preference.getSummary().toString();
        String stringKey = preference.getKey().toString();
        if (stringKey.equals("list_of_countries")){
            MyActivity.countryName = stringSummary;
        }

无所事事...... OnPreferenceChangeListener被调用....在首选项更改之前,即单击一个项目时,我成功检索的只是过去的摘要。 我找不到办法。

0 个答案:

没有答案