android - 使用导航组件 API 时更改语言 24+
问题描述
TL;DR 我们想要更改要显示的片段的区域设置(API 24+),而所有这些片段都将在同一个活动中。
我们正在使用NavHostFragment
和start_up_nav_graph.xml
。该图有多个片段,即登录、入职、GDPR ..etc
在此流程中,如果登录后我们发现您是德国用户,我们会尝试将您的语言环境更改为德语。在当前场景中,所有即将出现的片段(例如入职和 GDPR)都将显示在设备的区域设置中,而不是德语。
我们不能attachBaseContext
在这个答案这样的活动中使用,因为活动已经创建。
解决方案
我正在经历同样的痛苦兄弟。我试着做
NavigationUI.setupWithNavController(mToolbar,mNavController, mAppBarConfiguration);
但这也无济于事,因为工具栏标题和导航抽屉项目正在使用旧资源,当我这样做时activity.recreate()
,它实际上正在发生,但是当你关闭应用程序并再次重新启动它时,同样的问题......
推荐阅读
- c++ - multimap中的一键多值问题
- c# - 如何在集成测试之间刷新 IAppCache
- reactjs - npm install -g create-react-app 在 Windows 上给出错误 -4048 , -4051
- tensorflow - keras load_model 卡在加载状态
- clickhouse - ClickHouse 中 WHERE 子句中 UInt64 字段的条件
- javascript - 在 Wordpress Admin 中保存使用 jQuery 排序的帖子类型顺序
- python - 按类别连接 pd 数据帧的行?
- python - Pandas 数据框 - 创建由分组列中的字符串聚合组成的新列表列
- powershell - 将图像文件夹与 Powershell 中的 CSV 文件进行比较
- java - 为什么 Android codelab 03.2 在将双精度数除以零时会出现 IllegalArgumentException?