Android:如何将Locale设置为zh_HK android

时间:2017-01-04 19:06:42

标签: java android android-studio localization locale

我在将应用语言环境设置为zh_HK时遇到问题。 代码Locale locale = new Locale(“zh_HK”)也无法正常工作,在打印locales.getAvailable locales列表时,我得到了zh_HK_#Hans,zh_HK_#Hant。进一步设置Locale locale = new Locale(“zh_HK_#Hans”)也无效。

在可用语言环境的打印列表中,它没有像zh_HK这样的选项。 我正在导入java.utils.Locale。

请帮忙!

2 个答案:

答案 0 :(得分:0)

在你的班级中,extands Application把这段代码:

public class myApp extends Application {
 @Override
    public void onCreate() {
        super.onCreate();
Locale locale = new Locale("zh","HK");
        Locale.setDefault(locale);
        Configuration config = new Configuration();
        config.locale = locale;
        getApplicationContext().getResources().updateConfiguration(config, null);
}
}

答案 1 :(得分:0)

还必须以这种方式设置DisplayMetrics:

Locale myLocale = new Locale("zh","HK");
    Locale.setDefault(myLocale);
    Resources res = getApplicationContext().getResources();
    DisplayMetrics dm = res.getDisplayMetrics();
    Configuration conf = res.getConfiguration();
    conf.setLayoutDirection(myLocale);
    conf.locale = myLocale;
    res.updateConfiguration(conf, dm);