我正在使用支持库中的 android DrawerLayout 来显示幻灯片菜单。我使用单个活动和 5-6 个片段在 DrawerLayout 菜单中选择时显示它们。但是我有一个小问题是“如何检查当前是哪个片段可见,所以如果用户选择了与已经打开的片段相对应的菜单项。目前它再次创建片段并显示它,这是不好的。单击菜单项时触发的功能是:
private void selectItem(int position) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
// Locate Position
switch (position) {
case 0:
ft.replace(R.id.content_frame, fragment1);
break;
case 1:
ft.replace(R.id.content_frame, fragment2);
break;
case 2:
ft.replace(R.id.content_frame, fragment3);
break;
}
ft.commit();
mDrawerList.setItemChecked(position, true);
// Close drawer
mDrawerLayout.closeDrawer(mDrawerList);
}
如何检查请求的片段是否已经打开,以免再次创建它?他们有什么方法可以通过 FragmentManager 进行检查吗?