我想知道我是否可以管理像Activity这样的片段
我使用片段实现了tab功能(实际上,我无法使用startActivityForResult
从TabHost
获得结果),并且我想在选择选项卡菜单时调用每个片段,保存其先前的视图,例如使用{{{1} 1}}。每当我替换片段时,程序总是创建新的片段
有什么想法?
提前谢谢。
PS。我尝试使用FLAG_ACTIVITY_REORDER_TO_FRONT
,但Bundle仅提供savedInstanceState
,putInt
,putString
等。是否可以保存视图或其他对象?
@PatrickBoos
这是我的代码。声明putBundle
和FragmentManager fm
后,
FragmentTransaction ft
和AFragment.newInstance()实现为,
AFragment fragment = AFragment.getInstance();
if (!fragment.isAdded())
ft.replace(res, fragment, tag);
ft.commit();
答案 0 :(得分:4)
尝试使用类似于以下代码的内容来重用片段
ContactListFragment contactListFragment =
(ContactListFragment)getFragmentManager().findFragmentByTag("ContactList");
if(contactListFragment == null){
contactListFragment = new ContactListFragment();
}
ft.replace(R.id.fragment_container, contactListFragment,"ContactList";
ft.commit();