kotlin Android 12以上版本的问题-使用AppCompatDelegate的繁体中文

lnvxswe2  于 2023-10-23  发布在  Kotlin
关注(0)|答案(1)|浏览(139)

我有一个问题以上的android 12,使用AppCompatDelegate设置传统的中文语言.
其他语言运行良好。
这里是代码,

val appLocale: LocaleListCompat = LocaleListCompat.forLanguageTags("zh-Hant")
        // Call this on the main thread as it may require Activity.restart()
        AppCompatDelegate.setApplicationLocales(appLocale)

Locale.xml:

<locale-config xmlns:android="http://schemas.android.com/apk/res/android">
   <locale android:name="en"/>
   <locale android:name="ms"/>
   <locale android:name="th"/>
   <locale android:name="zh"/>
   <locale android:name="zh-Hant-TW"/>
   <locale android:name="hi"/>
</locale-config>

Build.gradle-

resConfigs("en", "hi", "ms", "th","zh", "zh-rTW", "b+zh+Hant+TW")

GitHub参考链接-https://github.com/android/user-interface-samples/tree/main/PerAppLanguages/views_app
谢谢你,谢谢

qyswt5oh

qyswt5oh1#

问题是-用更新的contextWrapper覆盖我的attachBaseContext方法。所以,我删除了attachBaseContext方法,它工作得很好。
对于Android 12(API级别32)及更低版本,请确保您的Activity已使用AppCompactActivity扩展,以获得与AppCompatActivity上下文(而非应用程序上下文)配合使用的向后兼容API。使用Appcompat 1.6.0或更高版本访问向后兼容的API。

相关问题