从外部偏好活动改变摘要

时间:2014-06-25 17:05:12

标签: android sharedpreferences android-preferences preferenceactivity

我在android中使用preferenceActivity来操纵我的共享偏好。我想出了如何使用preferenceActivity中的OnSharedPreferenceChangeListener更改摘要。但是,我正在使用一个选择器轮,所以我使用意图从这样的偏好活动中启动它......

<Preference
        android:summary="Snooze Picker Wheel"
        android:title="Snooze Timer" 
        android:key="snooze_pref">

        <intent
            android:action="android.intent.action.VIEW"
            android:targetClass="com.example.alarm.SnoozePicker"
            android:targetPackage="com.example.alarm" />
    </Preference>

我一直在研究,但我找不到将选择器轮的摘要更新为所选项目的方法。 所以我的问题是,有没有办法从不同的活动中更改preferenceActivity的摘要?那将是什么实现,我在哪里可以了解更多关于从不同活动中具体更改摘要的更多信息?谢谢你的帮助。

编辑:我通过在snoozePicker活动中设置共享首选项然后在onCreate和onResume

中的首选项活动中将其设置为此工作
if (sharedpreferences.contains(Snooze)) {
        int prefs = sharedpreferences.getInt(Snooze, -1);
        Preference editSnoozePref = (Preference) findPreference("snooze_pref");
        editSnoozePref
        .setSummary("Snooze Setting is " + prefs + " minutes");
    }

1 个答案:

答案 0 :(得分:1)

AFAIK,无法更改其他Activity的摘要  作为解决方法,您可以将摘要保存在SharedPreference中,并在创建PreferenceActivity时设置此摘要。这将是用户的无缝体验,因为摘要仅在创建PreferenceActivity后才可见。