setLocale( Locale.ENGLISH ) _android 查看webv">
赞
踩
1、第一步:
再BaseActivity的onCreate方法内再设置一遍当前的语言环境:
/** * 获取本地语言 */ private fun getLocaleLanguage() { when (MMKVUtil.decodeString("app_language")) { getString(R.string.app_language_us) -> setLocale( Locale.ENGLISH ) getString(R.string.app_language_cn) -> setLocale( Locale.SIMPLIFIED_CHINESE ) } } /** * 设置语言 * @param locale */ private fun setLocale(locale: Locale?) { Locale.setDefault(locale) val context: Context = BaseApplication.INSTANCE val resources = context.resources val config = resources.configuration config.setLocale(locale) context.resources.updateConfiguration( config, resources.displayMetrics ) }
2、第二步:需要在Application的onCreate内调用方法:
private fun initWebView() { WebView(this).destroy() }
3、以上就可以解决嵌套WebView导致国际化语言切换错乱问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。