前言
当我们进行横屏切换后就会重新运行onCreate 方法 ,重新new Fragment 就会产生两个相似的布局 相互覆盖。使用configChanges=”orientation|keyboardHidden|screenSize” 就可以不再产生相似布局,解决问题
系统语言改变
系统语言改变后,activity会调用onDestory()重启,然后重启onCreate(),因此一些体验非常不好。
解决办法:在activity中配置:
1 | android:configChanges="locale|layoutDirection|keyboard" |
对于这种配置,对于不同的ROM可能出出现不同的结果,还有以下奇怪的办法:
比如创建BaseActivity,在BaseActivity的onCreate中监听系统语言是否发生改变,然后通过eventBus去通知其他activity更换语言。

- 本文链接: https://blog.hansong.icu/2021/09/10/Android_ConfigChanges/
- 版权声明: 本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。