2014-04-25 62 views
4

在导航抽屉设计模式的android development tutorial上,管理不同布局的推荐方式是使用片段。这些片段通过交易FragmentTransaction().replace()交换。在我看来,导航抽屉碎片通常会反复交换和重新加载。因此,在这种情况下使用FragmentTransaction.show()FragmentTransaction.hide()调用是否更有意义?最佳实践:导航抽屉

现在使用NavigationDrawer的最佳实践是什么?

回答

1

是的,他们反复加载,就像活动......

最佳做法是什么谷歌揭露:FragmentTransaction.replace()因为:

  1. 他们知道自己在做什么^^
  2. 它不断只有一个片段加载在一次
1

如果您的主要关注是关于在导航抽屉中使用片段..那么你可以使用它。

碎片只是提供了一种轻松替换另一种布局而不创建新活动的方法。

如果你仍然想使用你的导航抽屉活动,那么你可以使用它。

现在就维护它的状态而言,android actionBar本身提供了可以维护你的应用状态的方法。

Now as per Android documentation as you are referring .. it is always good to have fragment as they a light weighted in context of to use new activity each time for your app. 

希望它有帮助!

+0

Im在NavigationDrawer中使用片段。我只是不明白为什么加载这些片段的默认行为是通过.replace()而不是.show()和.hide()。 –

+0

当你回到以前的活动时,你必须面临重新加载的问题..并且我希望你必须使用ActionBar ..是吗? – AndroidHacker

+0

我在导航抽屉中获得了5个片段,并且在这些片段中的每一个中,我都通过web服务加载了一些json数据。现在,即使我缓存检索到的数据(即时通过谷歌抽签检索数据),重新加载片段时会有半秒的延迟,因为我必须先重新创建片段并从缓存中获取数据,而不会使用.hide()将片段保留在背景中时会成为问题。 –