「已注销」 2016-09-17 06:42 采纳率: 0%
浏览 2255

Fragment切换出现重叠的问题怎么解决?

android:id="@+id/network_set_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
>

                        <FrameLayout
                            android:id="@+id/network_set_left_list_content"
                            android:layout_width="320dp"
                            android:layout_height="match_parent"
                            android:layout_marginRight="20dp"
                            ></FrameLayout>

                        <FrameLayout
                            android:id="@+id/network_set_right_list_content"
                            android:layout_width="960dp"
                            android:layout_marginLeft="320dp"
                            android:layout_height="match_parent"
                           ></FrameLayout>

                </FrameLayout>

切换fragment时
FragmentTransaction b = fragmentManager.beginTransaction();
b.replace(R.id.network_set_content, wifiInfoFragment);
b.addToBackStack(null);
b.commit();


出现重叠

分别有两个fragment加载在左右两个FrameLayout中了,而且在两个小的FrameLayout中切换fragment是没有问题的,我现在添加一个新的fragment到最外层的FrameLayout就发现之前的两个小的fragment还在

                    然后我

                         FragmentManager fragmentManager = getActivity().getFragmentManager();
        FragmentTransaction ft_info_list = fragmentManager.beginTransaction();
        FragmentTransaction a = fragmentManager.beginTransaction();
        FragmentTransaction b = fragmentManager.beginTransaction();

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            ft_info_list.remove(selectorListFragment).commit();
            a.remove(wiredNetWorkFragment).commit();
            b.replace(R.id.network_set_content, wifiInfoFragment);
            b.addToBackStack(null);
            b.commit();
        }

                    这样处理一下也是无效的。。请问有什么办法可以解决呢??
  • 写回答

1条回答

  • C盘无限大 2016-09-17 09:50
    关注

    这三个布局应该同一级布局,父视图用RelativeLayout用调用b.replace(R.id.network_set_content, wifiInfoFragment);调用transaction.hide()隐藏两个
    小的fragment或者两个FrameLayout设为View.GONE

    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序