请教下有没有遇到这种情况,要多测试就能出现这个bug。
bug描述:领券联盟Fragment切换错乱
bug出现步骤
①:选择“特惠”页
②:按home键返回后台
③:半小时以后打开领券联盟app。
不是100%出现,但是经常测试一定会出现。
这个是 Activity中切换Fragmnet的代码有bug,想问下有没有人遇到。

目前分析是:这段代码有问题:
// 首页 精选 特惠 搜索 切换业务逻辑
private void switchFragment(BaseFragment targetFragment) {
// 开启事物
FragmentTransaction fragmentTransaction = mFM.beginTransaction();
// 注意:replace的方式会导致生命周期的变化 要修改成add和hide的方式
// fragmentTransaction.replace(R.id.main_page_connecter, targetFragment);
// 要修改成add和hide的方式来控制Fragment的切换
if (!targetFragment.isAdded()) {
// 如果没有被添加过才能添加
fragmentTransaction.add(R.id.main_page_connecter, targetFragment);
} else {
// 如果被添加过则显示
fragmentTransaction.show(targetFragment);
}
if (lastOneFragment != null) {
// 上一个fragment不为空时要隐藏
fragmentTransaction.hide(lastOneFragment);
}
lastOneFragment = targetFragment;
// 一定要提交事物
fragmentTransaction.commit();
}
您的每一个用心回答,都会让这个世界变得更美好一些!