[英]Replacing FrameLayout in Activity by a Fragment does not replace the whole FrameLayout
我将简要描述我的应用程序布局。 有一个Activity,里面是一个FrameLayout,里面有一个RelativeLayout(这个RelativeLayout里面还有一些其他的小部件),它的尺寸设置为'Match Parent'。 在 MainActivity 中,我进行了片段事务,将 FrameLayout 替换为片段。
Activity 和 Fragment 之间的共同点是它们的顶部都有一个选项卡菜单。 现在,当 Fragment 替换 FrameLayout 时,Fragment 的 Tab Menu 应该会替换 Activity 的 Tab Menu(FrameLayout 设置为 Match Parent 尺寸)。 但是,这不会发生。
只有 Fragment 中的 RecyclerView 显示在 Activity 的 RecyclerView 上方(我在 Activity 和 Fragment 中各有一个 RecyclerView)。 选项卡菜单与活动的相同。
这是非常令人困惑的。 我错过了什么吗?
当从activity移动到Fragment时,需要在activity的views上设置View.Gone
来实现想要的view。
您可以像这样删除活动视图。
在Activity中,在进行Fragment Transaction之前,
//whatever view you want to remove//.setVisibility(View.GONE)
从片段返回到活动时,您应该将视图的可见性设置回可见。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.