我有GridView哪个在片段中显示,GridView包含项目数,当我点击任何项目时片段的数量将打开。 它运行正常,但是当我点击后面打开片段后按下片段被删除但问题是当我打开活动后片段返回按下前片段仍然显示。
我在MainActivity的背景中实现了以下代码
Fragment currentFragment = getSupportFragmentManager().findFragmentById(R.id.activity_main_content_fragment);
if (currentFragment instanceof Home) {
removeFragmetns();
} else if (currentFragment instanceof RemarksFragment) {
} else {
getSupportFragmentManager().popBackStackImmediate();
}
和removefragments方法是
public void removeFragmetns() {
FragmentManager fm = getSupportFragmentManager();
for (int i = 0; i < fm.getBackStackEntryCount(); ++i) {
fm.popBackStack();
}
}
当我调用片段和活动时 在Swich案例OnClickListener
fragmentClass = SyncFragment.class;
GlobalConstant.whichFragment = "data";
title = web[position];
切换案例后
fragmentManager.beginTransaction()
.addToBackStack(null)
.replace(R.id.activity_main_content_fragment, fragment).commit();
在切换案例中调用活动onclicklistener
fragmentManager.popBackStack();
Intent intentTasks = new Intent(getActivity(), TasksActivity.class);
startActivity(intentTasks);