使用带有碎片的活动VS的导航抽屉有什么好处?

时间:2017-01-15 21:02:06

标签: android android-fragments navigation-drawer

我想在我的应用程序中实现导航抽屉,但是我是否应该将它与片段或活动一起使用(有关详细信息,请参见下图)。

两者之间是否存在任何真正的优点或缺点,还是只是偏好?

修改

只是为了澄清我的问题:

  1. 在使用活动而不是碎片的情况下;
  2. 当我选择“导入”时,将打开一个活动而不是一个片段,如果我选择“图库”,它将打开一个活动,其中包含图库项目等的内容,依此类推抽屉窗口中的其他项目。

    1. 如果使用Fragments而不是Activities;
    2. 如果我从抽屉窗口中的任何项目中选择,它将在片段中为所选的每个项目打开其内容,而不是为每个选项启动新的活动。

      enter image description here

1 个答案:

答案 0 :(得分:1)

记住片段需要一个活动。使用碎片时,您总是有一个最小值。

如果你在大多数情况下谈论使用像main元素一样最好使用片段,因为你有更多的灵活性UI。

如果您有3个活动和10个碎片或有13个活动,表现会更好吗?想一想,应用程序中的导航将是一个巨大的挑战,但它只是在您的应用程序中使用正确的流程。

修改

例如:

带有活动而不是碎片的抽屉

如果您使用不带片段的NavigationDrawer,那么最好将NavigationDrawer实例保留在单个Activity中,当您通过选择NavigationDrawer中的项目导航应用程序时,那些启动的每个活动都不应实现NavigationDrawer但是应该实现后退按钮以导航回实现NavigationDrawer的" Main" / single活动。

注意:如果您确实想要在多个活动中实现NavigationDrawer,则必须在每个要显示它的Activity中重新创建NavigationDrawer的新实例。

我认为这对使用片段来说是一个缺点,而如果你使用片段,你不需要抽屉的许多实例,你只需要一个。

带有碎片而不是活动的抽屉

如果你将NavigationDrawer与Fragments一起使用,那么抽屉应该在一个Activity中实现,当选择每个抽屉项时,它们的内容会显示在它们自己的每个片段中(在管理的中心Activity内部调用它们)所有Fragment实例)