Android 棒棒糖设置默认本地不起作用

Android 棒棒糖设置默认本地不起作用,android,android-5.0-lollipop,Android,Android 5.0 Lollipop,我在大多数android API版本上都运行了这个方法,可以使用语言(字符串等)设置应用程序 当在棒棒糖运行设备上使用时,没有任何变化 有人知道如何解决这个问题吗?我注意到棒棒糖中有类似的行为,但在以前的API版本中没有 在我的例子中,问题是因为我和你一样设置了语言代码和国家代码,但我的资源文件夹是特定于语言的,只有“values fr”和“values es”等 如果你设定这条线 String language = sharedPref.getString("pref_language", "

我在大多数android API版本上都运行了这个方法,可以使用语言(字符串等)设置应用程序

当在棒棒糖运行设备上使用时,没有任何变化


有人知道如何解决这个问题吗?

我注意到棒棒糖中有类似的行为,但在以前的API版本中没有

在我的例子中,问题是因为我和你一样设置了语言代码和国家代码,但我的资源文件夹是特定于语言的,只有“values fr”和“values es”等

如果你设定这条线

String language = sharedPref.getString("pref_language", "he_IL");

它是否按预期工作


我只需要语言代码,所以设置就解决了这个问题。

终于找到了答案

答案是用“iw”而不是he_-il


String language=sharedPref.getString(“pref_language”、“iw”)

上面的回答很有效,但仅适用于语言,例如:

NumberFormat numberFormat = NumberFormat.getCurrencyInstance(Locale.getDefault());
以前修改默认语言环境,不再像以前的android版本那样有效

更改了区域设置的初始化方式(我不知道为什么,我查看了API,什么也没说)

因此,请更改初始化区域设置的方式,如下所示:

Locale locale = Locale("en_US")
为此:

Locale locale = new Locale("en", "US");
它就像一个符咒:)

希望这对将来的人有所帮助


干杯

where is
Locale=new Locale(“您的语言环境”)?是的,你救了我一个晚上的睡眠。
Locale locale = Locale("en_US")
Locale locale = new Locale("en", "US");