Android:如何在单个Activity中管理片段?

时间:2011-11-15 03:22:02

标签: android fragment

我想知道我是否可以管理像Activity这样的片段 我使用片段实现了tab功能(实际上,我无法使用startActivityForResultTabHost获得结果),并且我想在选择选项卡菜单时调用每个片段,保存其先前的视图,例如使用{{{1} 1}}。每当我替换片段时,程序总是创建新的片段 有什么想法?
提前谢谢。

PS。我尝试使用FLAG_ACTIVITY_REORDER_TO_FRONT,但Bundle仅提供savedInstanceStateputIntputString等。是否可以保存视图或其他对象?

@PatrickBoos 这是我的代码。声明putBundleFragmentManager fm后,

FragmentTransaction ft

和AFragment.newInstance()实现为,

AFragment fragment = AFragment.getInstance();
if (!fragment.isAdded())
    ft.replace(res, fragment, tag);
ft.commit();

1 个答案:

答案 0 :(得分:4)

尝试使用类似于以下代码的内容来重用片段

ContactListFragment contactListFragment = 
     (ContactListFragment)getFragmentManager().findFragmentByTag("ContactList");
if(contactListFragment == null){
contactListFragment = new ContactListFragment();
}
ft.replace(R.id.fragment_container, contactListFragment,"ContactList";
ft.commit();