Android片段backstack

时间:2015-11-06 19:03:18

标签: android android-fragments

我的应用中有购物篮片段。我想只显示该片段的一个实例。例如:

[1] [2] [my basket fragment] [3] [4] 

然后我需要再次显示busket片段并将其替换为BackStack的顶部。 BackStack必须像这样:

[1] [2] [3] [4] [my basket fragment]

怎么可能?因为按标签删除片段会留下没有内容的空视图。

1 个答案:

答案 0 :(得分:0)

如果我理解你的话,你不想在你的靠背堆中放入篮子碎片。这样,如果用户按下它就不会显示。为此,请不要将其添加到Backstack中。

BasketFragment yourInstanceOfTheBasketFragment = new BasketFragment();

// to show the fragment
getFragmentManager()
          .beginTransaction()
          .replace(R.id.container, yourInstanceOfTheBasketFragment)
          .commit();

// to remove the current fragment, and show next in backstack.
getFragmentManager()
          .popBackStack();

另请注意,removeFragment只会这样做。它不会添加任何东西。因此,如果您想删除片段并在堆栈中显示其下方的内容,请致电getFragmentManager.popBackStack();