动态更改strings.xml

时间:2011-12-06 07:25:18

标签: android

我想发布我的问题很明白。

我有2个strings.xml,一个用于英语,另一个用于印度本地语言,让它成为泰米尔语。

我在我的tamil strings.xml中保留了strings.xml(英文)的所有属性的含义

最初我的应用程序将加载英文strings.xml(正常)

我有一个应该用来改变语言的按钮(在这种情况下为泰米尔语) 单击它 - 我的整个应用程序应该读取我的tamil strings.xml ..

我知道下面的代码仅适用于默认的LOCALE

Resources res = getResources();
      DisplayMetrics dm = res.getDisplayMetrics();
      Configuration conf = res.getConfiguration();
      conf.locale = Locale.GERMANY;
      res.updateConfiguration(conf, dm);

可以调整它来动态阅读我的自定义strings.xml吗?

非常感谢任何想法。

2 个答案:

答案 0 :(得分:0)

这是不可能的。只能更改手机的语言,而不是更改应用的语言。

为什么不进行设置活动?在那里,您可以选择更改将用户转移到手机设置页面中的区域设置和文本的语言?

告诉我你是否需要代码或类似代码。

答案 1 :(得分:0)

你的意思是你想在你的应用程序中根据需要将你的语言从英语改为泰米尔语吗?

我在我的活动onCreate中调用了这个方法:

public void setupLocale(Activity c, String NewLocale) {
    Resources res = c.getBaseContext().getResources();
    Configuration newConfig = new Configuration(res.getConfiguration());
    newConfig.locale = new Locale(NewLocale);
    res.updateConfiguration(newConfig, null);
}

其中c是我的活动,NewLocale是我想要使用的语言环境字符串。例如“fr”代表法语,“da”代表丹麦语。不知道泰米尔语是什么,但你可能会这样做。

相关问题