您现在的位置是: 首页 > 成语典故大全 成语典故大全

android 如何完成语言切换_android系统语言切换

ysladmin 2024-05-12 人已围观

简介android 如何完成语言切换_android系统语言切换       android 如何完成语言切换的今日更新不仅仅是技术上的更新,更是人们生活方式的改变。今天,我将和大家探讨关于android 如何完成语言切换的今

android 如何完成语言切换_android系统语言切换

       android 如何完成语言切换的今日更新不仅仅是技术上的更新,更是人们生活方式的改变。今天,我将和大家探讨关于android 如何完成语言切换的今日更新,让我们一起探讨它对我们生活的影响。

1.Android国际化多语言切换

android 如何完成语言切换_android系统语言切换

Android国际化多语言切换

       关于App国际化,之前有讲到国际化资源、字符换、布局相关,想要了解的猛戳 用力抱一下APP国际化 。借着本次重构多语言想跟大家聊一下多语言切换,多语言切换对于一款国际化App来讲是重中之重,并非难事,但是若要做好也是一件不容易的事情。

        当我们做了系统的配置更改,比如说切换了系统导航或者说更改了深色模式,那么我们一般的处理是也是要对Application作出处理。

        如果项目中有用到ApplicationContext去getString(@StringRes int id)实现加载的提示语,那么如果只是单纯的重启界面则无法让当前的提示语跟随当前切换的语言,所以我们要么重启整个应用,要么对ApplicationContext中的Local也作出相应的更新方可,这里有一点问题,虽然Android N之后updateConfiguration是过时方法,官方给出使用createConfigurationContext代替,但是更新ApplicationContext的Local发现无效使用老版本updateConfiguration正常。

        如果你发现你的应用广播通知栏适配无效,那就是context中的Local在切换语言是并未及时更新Local,这里调试一下便知,如果是Applicaiton注册的广播,那么多半情况下是没有更新ApplicationContext的Local所导致的。

        多语言适配基本步骤大概就是如此了,下面看一下适配的细节问题。

        [上传失败...(image-b42d06-1640685147639)]

        还有一点Android N之后,手机系统的语言配置选项已经不是单选了,改为一个列表了,具体可以参考手机设置中的语言和输入法,所以 setLocal(@Nullable Locale loc) 方法建议不要再使用了,我相信很多人还在用,正确的用法应该是 setLocals(@Nullable LocaleList locales) ,需要传递一个集合。

        当你的应用使用的是androidx.appcompat:appcompat:1.2.0及以上时,BaseActivity中需要实现下面方法。

        这套方案目前不在推荐,直接去替换attatchBaseContext()中的context则可,经过测试是完全正常的。

        以下则是多语言操作的工具类,现在提供出来,需要的朋友可以自行进行改造。

       若是使用的vivo手机,可以参考以下语言变更的方法:

       英文设置为中文:Settings--System?management/More?settings--Language--简体中文/繁体中文;

       繁体中文切换为简体/英文:设定--系统管理/更多设定--语言--简体中文/English;

       简体中文设置为英文/繁体:设置--系统管理/更多设置--语言--English/繁体中文。

       若有更多疑问,可进入此链接网页链接咨询在线客服了解详情。

       好了,今天我们就此结束对“android 如何完成语言切换”的讲解。希望您已经对这个主题有了更深入的认识和理解。如果您有任何问题或需要进一步的信息,请随时告诉我,我将竭诚为您服务。