1
我有几个由活动维护的片段。该应用程序从“首页”片段开始,当我转到“片段A”,然后转到设置活动并从设置活动中按回来时,“片段A”被替换为“首页”片段。如何保留“片段A”的状态并在从“设置”活动返回时保持抽屉打开?从活动返回后保留片段
为了便于说明,我想回到我发起活动的片段,在这种情况下是设置活动,而不是回到'Home'片段。任何帮助将不胜感激,谢谢!
这里是我的抽屉代码:
if (id == R.id.fragOne) {
fragment1 = new FragmentOne();
android.support.v4.app.FragmentManager fragmentManager1 = getSupportFragmentManager();
fragmentManager1.beginTransaction()
.replace(R.id.container, fragment1, "frag1")
.commit();
} else if (id == R.id.fragTwo) {
fragment6 = new fragmentTwo();
android.support.v4.app.FragmentManager fragmentManager2 = getSupportFragmentManager();
fragmentManager2.beginTransaction()
.replace(R.id.container, fragment2, "frag2")
.commit();
} else if(id == R.id.helpDrawer){
Intent drawerHelp = new Intent(MainActivity.this, Help.class);
startActivity(drawerHelp);
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer != null) {
drawer.closeDrawer(GravityCompat.START);
}
return true;
你是如何回到碎片从活动? – Sanoop
我正在按活动中的后退按钮返回到片段。在我的主要活动中,我重写了后退按钮以查看抽屉是否如此打开.. @Override public void onBackPressed(){ DrawerLayout drawer =(DrawerLayout)findViewById(R.id.drawer_layout); (抽屉!=空){(drawer.isDrawerOpen(GravityCompat.START)){ drawer.closeDrawer(GravityCompat.START); } else { super.onBackPressed(); } } } –
你尝试过'supportFinishAfterTransition();'? – Sanoop