我遇到了一个问题,我解决了问题。我的应用程序有两种类型的碎片。当应用程序启动时,带有主菜单的片段将添加到我用作片段容器的FrameLayout
。这个片段占据了整个屏幕。然后,当我选择菜单中的一个项目时,应将相应的片段加载到容器中,替换菜单。但是,这个片段必须只从左边占据屏幕的1/4,而外面的空间将由其他一些片段使用。
我正在考虑制作3 FrameLayouts
,一个用于左侧,一个用于右侧,一个用于整个屏幕,但这将导致片段事务出现问题,因为我必须保留标签哪些碎片在哪里并用手将其移除。
基本上我需要的是一些方法来改变我的片段是否被加载到一个占据全屏的容器,或者一个容器只占用了屏幕的某些部分。我可能可以用大量的跟踪和错误以及一些代码来做到这一点,但我敢打赌,在我错过的android中有一个非常简单的方法。
答案 0 :(得分:2)
我建议使用两个不同的Activities
,而不是尝试将这些片段动态加载到各种容器中。
听起来主菜单片段只会在全屏显示。因此,请将其设为完整Activity
(让我们称之为MainMenuActivity
)。
第二个活动将有两个FrameLayout
个内容,其中一个占据屏幕的1/4,另一个占用剩余的3/4。在选择主菜单选项时加载第二个活动,并在第二个活动的onCreate()
中填充片段。
点击第二个活动的后退按钮会将用户返回MainMenuActivity
。