通过 <fragment> xml 中的标记还是通过代码中的 FragmentManager 向活动添加片段更好?



我已经开始开发Android应用程序,我想知道在向活动中添加片段的情况下,哪种方式更好。让我们假设活动的视图总是包含三个片段。他们不会改变。永远都一样。因此,是通过标签添加它们更好,还是将它们包含在活动代码中更好?

还有第二个问题:假设我有一个片段的活动,它是一个列表。然后,当我点击项目时,我想显示新的视图。然后我可以用新的完全不同的片段替换列表片段吗?即使答案是肯定的,那么这比创造新的活动更好吗?

感谢所有回复

在将片段添加到活性的情况下,哪种方式更好

一种方法并不一定比另一种"更好"——它们都有自己的目的,就像任何静态与动态的比较一样。

例如,不能使用setArguments()为布局中声明的片段提供参数。这样的片段也不能被另一个片段取代:如果它是布局的一部分,它就会一直存在。当然,您仍然可以显示/隐藏该实例,但尝试通过FragmentTransaction实际删除它是行不通的。不过,静态元素通常更容易使用,因为它们有明确定义的生命周期和行为。

关于你的第二个问题:是的,这很有可能。一些开发人员围绕单个Activity容器构建应用程序,在用户浏览内容时交换片段。在大多数情况下,从用户的角度来看,这样做和进行多个活动几乎没有区别。需要记住的重要一点是选择一种你熟悉的方法,不会使事情过于复杂,并利用"实现有效导航"中解释的模式。

最新更新