Android Fragment 切换时布局重叠

用Fragment模拟Tab页面,正常情况不会发生切换时重叠问题,但是当应用在后台运行时,设置更改语言选项或系统不小心强制关闭后,再进入应用会同时显示多个Tab内容,UI发生重叠。

这是因为再次回到这个app的时候,通过onCreate中的参数savedInstanceState恢复了之前的fragment。此时的FragmentTransaction中的相当于又再次add了fragment进去的,,之前保存的fragment也还在。hide()和show()方法对之前保存的fragment已经失效了。所以出现了重叠的现象。

解决方法1:

各个对应的Fragment xml文件设置不透明的背景颜色,掩盖掉其它fragment:android:background="@color/white"

解决方法2:

@Override

publicvoidonSaveInstanceState(BundleoutState){

//super.onSaveInstanceState(outState);//将这一行注释掉,阻止activity保存fragment的状态

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

志在山顶的人,不会贪念山腰的风景。

Android Fragment 切换时布局重叠

相关文章:

你感兴趣的文章:

标签云: