- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我 extends
PreferenceFragment
并将这样的代码添加到 onCreate
方法:
final ListPreference pref = (ListPreference) findPreference(PREF_NAME);
String[] array={getString(R.string.variant1), getString(R.string.variant2)};
CharSequence[] entries = array;
CharSequence[] entryValues = array;
pref.setEntries(entries);
pref.setDefaultValue(getString(R.string.variant1));
pref.setEntryValues(entryValues);
有两个变体(它们不能打开/关闭,所以我使用 ListPreference
)。
所以我的问题是:一方面我想在用户界面中看到合适的翻译,所以你可以看到我使用了 getString
,在 SharedPreferences
中的另一方面,我希望使用不依赖于用户语言的键来存储值,我该如何实现?
最佳答案
EntryValues 数组用作条目数组中项目的键,因此这两个数组的大小应该相同。条目数组中的用户值会显示(因此需要翻译),但在共享首选项中会保存 entryValues 数组中的选定值(因此不应本地化)。
在您的代码中,您可以将其更改为如下内容:
final ListPreference pref = (ListPreference) findPreference(PREF_NAME);
CharSequence[] entries = new String[]{getString(R.string.variant1), getString(R.string.variant2)};
CharSequence[] entryValues = {"variant1", "variant2"};
pref.setEntries(entries);
pref.setDefaultValue("variant1");
pref.setEntryValues(entryValues);
关于java - ListPreference 和翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42303925/
我有一个具有以下首选项 xml 资源的 PreferenceFragment: 我想做的是:当我启用 pref_bt_enabled 时,我会打开蓝牙,查找配对设备并发现其他设备并将
我很难尝试设置 ListPreference 的样式。 我应用了一个主主题,它声明了一个 preferenceTheme,并且它们都链接到一个 dialogTheme(分别链接到 alertDialo
我有一个 ListPreference,我在单击列表以显示它时动态填充它。填充工作正常,但直到我下次单击打开列表时才会显示我填充的值,而是第一次显示 xml 文件中的值。感觉就像在调用 onPrefe
当我尝试在 SharedPreferences 中读取“sync_frequency”的默认值时,它返回 30,但应该是 300000。 我的资源: Intervall 5 m
我 extends PreferenceFragment 并将这样的代码添加到 onCreate 方法: final ListPreference pref = (ListPreference) f
编辑:实际上只有我的 ListPreference 默认值没有设置。 当我的应用程序启动时,尽管我调用了 setDefaultValues,但没有设置 ListPreference 默认值。是因为我在
我在 PreferenceActivity 中创建了一个 ListPreference,它运行良好: 用户点击首选项 打开一个列表对话框(从 array.xml 中检索列表项及其值) 如果用户选择列表
我正在使用 ListPreference 让用户从列表中选择一个位置。 一些条目被截断了太长字符串的 bcs。 我正在寻找最简单的方法来解决这个问题。一种变体是只使用较小的字体大小。 如果开销不是太大
我想在我的 PreferenceActivity 中创建一个 ListPreference。 单击 ListPreference 时,我会看到一个带有 ListView 的对话框。 ListView
这是我的代码 Mean sidereal solar year(365.256363004) Mean tropical solar year(36
我得到了这个 ListPreference,但它有一个我并不真正想要的取消按钮,而且它占用了太多空间。我当然可以将它设置为白色,但我宁愿让它消失。 最佳答案 自己找到答案: 这实际上让整个盒子变小
在我的设置 Activity 中,在选择 ListPreference 以升序或降序排列结果列表后,所选的值不会出现在 ListPreference 中。这是我用于此列表首选项的代码。我还附上了这个问
我有一些列表首选项,但我不知道如何保存列表中的各个值。我该怎么做?这是我的东西 http://i41.tinypic.com/dh4gvo.png Preference customPref
我们如何根据 ListPreference 中的数组选择禁用 CheckBox 首选项? 我所拥有的是,如果选择了自动模式或手动模式,我不想启用控制加速度计轴反转的复选框。我怎样才能实时做到这一点?感
是否有一个示例或可能已经为 Android 实现的 ListPreference,它有一个 TextView 和一个按钮来向列表添加新值? 像这样: |------------------------
我无法理解如何将 ListPreference 的条目值保存为整数。截至目前,我已将 ListPreference 定义如下: ...其中 entries 和 entryValues 属性在
当从我的首选项中的 ListPreferences 中进行选择时,如何更改 Fragment 中微调器数组的内容? 在我的应用程序中,我尝试添加包含 ListPreferences 的首选项。我编写了
为什么它在代码中不起作用?在 XML 中没问题,但在代码中不行。 String [] testValues = {"a" , "b", "c"}; ListPreference test = (Lis
我有一个 ListPreference,但是当我点击一个项目时,该值没有更新。getValue() 总是返回同样的东西。 当我重新点击 ListPreference 时,不幸的是该值没有改变。 我的代
我正在尝试为我正在开发的 Android 项目创建首选项屏幕。 我已经创建了一个 XML 配置文件,我一直将其用于调试,但现在我想创建一种更加用户友好的方式来设置应用程序的首选项,并决定使用首选项屏幕
我是一名优秀的程序员,十分优秀!