Pri*_*rma -2 android android-fragments
我想从按钮单击事件的堆栈中删除FragmentTransaction的最后两个片段。
为此,我经过的Android文档的功能,popBackStack()在那里我也得到了popBackStack()两个不同类型的参数,即popBackStack (int id,int flags)与popBackStack (String name,int flags)
根据为功能编写的android文档popBackStack (int id,int flags)是It will Pop all back stack states up to the one with the given identifier.
我应该id在popBackStack (int id,int flags)函数的地方传递什么?
好吧,我没有尝试这段代码,但是您可以使用以下方法获取最后两个片段:
int index = getActivity().getFragmentManager().getBackStackEntryCount() - 1;
FragmentManager.BackStackEntry lastEntry = getFragmentManager().getBackStackEntryAt(index);
FragmentManager.BackStackEntry secondLastEntry = getFragmentManager().getBackStackEntryAt(index - 1);
Run Code Online (Sandbox Code Playgroud)
然后你可以使用Id的Fragment从删除它BackStack。
popBackStack(lastEntry.Id, 0);
popBackStack(secondLastEntry.Id, 0);
Run Code Online (Sandbox Code Playgroud)
https://developer.android.com/reference/android/app/FragmentManager.BackStackEntry
您是否也尝试在popBackStack()没有参数的情况下只调用两次?
| 归档时间: |
|
| 查看次数: |
1732 次 |
| 最近记录: |