关于安卓中fragment中视图重叠的问题

图片说明
123都有自己的fragment,然后3fragment上有个item,然后这个item是个新的fragment,然后如果此时打开了item的fragment再去点击12页面,就会造成视图的重叠。
请问这时候应该怎么解决?

关于Fragment重叠问题分析和解决

你是通过add方法去切换fragment的吧,这样会导致上层覆盖下层fragment。建议使用replace方法去切换fragment。

你为啥不用TabLayout + ViewPager呢?

使用hide/show的方式, 提供参考:

    /**
     * 使用hide/show展示MainActivity的fragment
     * 加锁防止同时点击导致的跳转混乱问题;
     */
    public synchronized void replaceMainContent(Fragment fragment) {
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        Fragment exitFragment;
        boolean isExit = false;
        for (int i = 0; i < fragmentsList.size(); i++) {
            exitFragment = fragmentsList.get(i);
            if (exitFragment != null)
                fragmentTransaction.hide(exitFragment);
            if (exitFragment == fragment)
                isExit = true;
        }

        if (!isExit) {
            fragmentsList.add(fragment);
            fragmentTransaction.add(R.id.fl_main, fragment);
        }

        fragmentTransaction.show(fragment);
        fragmentTransaction.commitAllowingStateLoss();
    }

你们好