本文主要是介绍Android根据Locale获取String,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在开发应用时,某些场景需要我们通过代码动态的获取string中的字符串,调用的context.getString()方法,这个方法返回的是默认的string.xml中的资源,如果用户切换了locale,那么这个方法返回的可能还是默认的语言。如何通过Locale来获取对应的string资源呢?
获取Locale
Locale locale = Locale.getDefault();
获取对应的字符资源
public static String getString(Context context, int id, Locale locale) {Configuration configuration = new Configuration(context.getResources().getConfiguration());configuration.setLocale(locale);return context.createConfiguration(configuration).getResources().getString(id);
}
这个方法可以在高版本的Android上使用,低版本由于我们没有涉及,所以没有了解。
参考
- Android多语言适配的示例代码(兼容7.0+)
- 关于android:使用特定语言环境中的字符串从默认语言环境中获取字符串
这篇关于Android根据Locale获取String的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!