如何摧毁片段?
我有一个Activity
。 Activity
有两个Fragment
。 片段A是菜单。 片段B是细节。
我尝试在片段B中创build其他片段C,因此,活动中有3个片段。 我尝试将片段Breplace为片段D.
我猜片段B和C已经死了。 但这些碎片还活着。 只是片段是onDestroyView()
状态。 我想onDestroy()
或onDetach()
。
我该怎么做Fragments.onDestroy()
或onDetach()
? 我不能销毁或更改Activity
。
如果您不手动删除这些碎片,它们仍然附加到该活动。 你的活动不会被破坏,所以这些碎片也是如此。 要删除(如此销毁)这些碎片,您可以调用:
fragmentTransaction.remove(yourfragment).commit()
希望对你有所帮助
试试这个
@Override public void destroyItem(ViewGroup container, int position, Object object) { // TODO Auto-generated method stub FragmentManager manager = ((Fragment) object).getFragmentManager(); FragmentTransaction trans = manager.beginTransaction(); trans.remove((Fragment) object); trans.commit(); super.destroyItem(container, position, object); }
如果你在片段本身,你需要调用它。 yourFragment需要被调用的片段。input代码:
。getFragmentManager()的BeginTransaction()除去(yourFragment).commitAllowingStateLoss();
或者如果你使用的是supportLib,那么你需要调用:
。getSupportFragmentManager()的BeginTransaction()除去(yourFragment).commitAllowingStateLoss();
getActivity().getSupportFragmentManager().popBackStack();
- Android – ICS 4.0中的MediaPlayer缓冲区大小
- Android Studio:Gradle构build失败 – 执行失败的任务':compileDebugAidl'
- 有没有一种方法来自动化android sdk安装?
- Xamarinformsandroid应用程序不获取DeviceTokenparsingSDK
- 如何设置支持库零食栏文本颜色的东西比android:textColor?
- 什么是从Android的JNI程序调用的日志API?
- 在Xamarin中使用本地数据库
- 如何在使用attr / selectableItemBackground作为背景时修改纹波颜色?
- 片段添加或replace不工作