在Listpreference中显示所选项目的结果时出现问题

时间:2013-04-03 14:20:05

标签: android sharedpreferences listpreference

我正在使用sharedPreference编写应用程序,我希望显示display the selected item of list

我正在使用以下代码:

 refresh.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {

            @Override
            public boolean onPreferenceChange(Preference preference,
                    Object newValue) {
                Toast.makeText(getBaseContext(),
                        "list preference:"+newValue.toString(),
                        Toast.LENGTH_SHORT).show();
                refresh.setSummary(refresh.getEntry());
                return true;
            }
        });

但问题是,我无法显示当前所选的列表项。而不是这个,我收到了以前选择的列表项。

我不知道我使用的那个是否正确。

还有其他方法可以显示它吗?

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

尝试使用preference.getSummary()代替newValue.toString()

refresh.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {

        @Override
        public boolean onPreferenceChange(Preference preference,
                Object newValue) {
            Toast.makeText(getBaseContext(),
                    "list preference:"+preferences.getString("preference_key"),
                    Toast.LENGTH_SHORT).show();
            refresh.setSummary(preferences.getString("preference_key"));
            return true;
        }
    });