Fragment切换过程中会导致`闪屏/闪烁`的问题

Fragment切换过程中会导致`闪屏/闪烁`的问题

Android小彩虹2021-07-15 10:06:22150A+A-

Fragment切换过程中会导致闪屏/闪烁的问题, 原方法为 :

 private void switchPages(int index) {
     if (ListUtils.isEmpty(mFragments)) {
         return;
     }
     FragmentManager fragmentManager = getChildFragmentManager();
     FragmentTransaction transaction = fragmentManager.beginTransaction();
     Fragment fragment;
     for (int i = 0, j = mFragments.size(); i < j; i++) {
         if (i == index) {
             continue;
         }
         fragment = mFragments.get(i);
         if (fragment.isAdded()) {
             transaction.hide(fragment);
             transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
         }
     }
     fragment = mFragments.get(index);
     if (fragment.isAdded()) {
         transaction.show(fragment);
     } else {
         transaction.add(R.id.fl_home_container, fragment);
     }
     transaction.commitAllowingStateLoss();
 }

导致该问题的代码是 transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE) 在设置的动画时产生的。取消setTransition设置动画, 则显示正常。

点击这里复制本文地址 以上内容由权冠洲的博客整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

支持Ctrl+Enter提交

联系我们| 本站介绍| 留言建议 | 交换友链 | 域名展示
本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除

权冠洲的博客 © All Rights Reserved.  Copyright quanguanzhou.top All Rights Reserved
苏公网安备 32030302000848号   苏ICP备20033101号-1

联系我们