gpt4 book ai didi

android - RingtonePreference 不保存其值

转载 作者:太空狗 更新时间:2023-10-29 13:34:30 26 4
gpt4 key购买 nike

我已经使用了一些首选项,例如 EditTextPreference 等,它们都能正常工作,但现在我需要使用 RingtonePreference,但它无法正常工作。这是非常简单的代码:

  <RingtonePreference
android:key="my_ringtone_key"
android:title="Select ringtone"
/>

当我单击此首选项时,id 打开对话框以选择铃声,但它不会保存。我的意思是,我选择铃声,按“确定”,然后再次单击此首选项,但仍然没有选择铃声。

如果我尝试从代码中获取值(value),就像这样:

        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
String tmp = prefs.getString("my_ringtone_key", "none");

然后 tmp 有默认值“none”,这意味着该值完全不存储在 SharedPreferences 中。

但是:如果我将 RingtonePreference 更改为 EditTextPreference,即:

  <EditTextPreference
android:key="my_ringtone_key"
android:title="Select ringtone"
/>

然后一切正常:我可以编辑值,存储值,当然我可以从代码中获取它。

我使用 API 级别 7。我在模拟器和两个设备上测试了这个,SE Xperia Neo 和一些 Acer。

那么,如何让 RingtonePreference 起作用呢?如果 RingtonePreference 是否适合您,请添加评论。

最佳答案

尝试删除 noHistory="true" , android:launchMode="singleInstance" , 和/或 android:excludeFromRecents="true"来自受影响的<activity> list 中的条目。

launchMode输入为我解决了问题;我发现这些解决方案最近作为答案发布了 here .

关于android - RingtonePreference 不保存其值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12052096/

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