gpt4 book ai didi

java - 从 ListPreference 获取 EntryValue 并设置更改

转载 作者:行者123 更新时间:2023-12-01 12:28:13 25 4
gpt4 key购买 nike

我不明白如何从 ListPreference 获取 entryValue。我想为我的应用程序设置本地化。但该代码必须在setContentView(R.layout.activity_main);之前设置。简而言之,我的应用程序是一个多语言应用程序。我应该怎么办?以及如何从 ListPreference 获取 entryValue

这是我的代码:

列表首选项

<ListPreference android:key="pref.language"
android:title="@string/language"
android:dialogTitle="@string/select_language"
android:entries="@array/pref_language_entries"
android:entryValues="@array/pref_language_values"
android:defaultValue="en_US"
android:summary="%s" />

strings.xml

<string-array name="pref_language_entries">
<item>English</item>
<item>Indonesian</item>
<item>Russian</item>
</string-array>

<string-array name="pref_language_values">
<item>en_US</item>
<item>in_ID</item>
<item>ru_RU</item>
</string-array>

据我所知,此代码用于更改 Activity 的区域设置:

Locale locale = new Locale("entryValue goes here");
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config,
getBaseContext().getResources().getDisplayMetrics());

感谢您的努力...

最佳答案

为什么......这非常简单:

listPref.getValue() 应该可以获取当前选定的条目值,前提是您实际上已从 PreferenceScreen 获取了 ListPreference 的引用。

ListPreference documentation link .

Link to a simple example .

关于java - 从 ListPreference 获取 EntryValue 并设置更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26163574/

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