「已注销」 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

    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?