如何退出片段并从工具栏项返回上一个活动或片段

时间:2015-10-03 16:56:29

标签: android android-fragments android-toolbar

如何退出片段并从工具栏项返回上一个活动或片段?

我试过调用getFragmentManager()。popBackStackImmediate();来自onOptionsItemSelected,但它无效。

3 个答案:

答案 0 :(得分:2)

@Override
public void onBackPressed(){
    FragmentManager fm = getFragmentManager();
    if (fm.getBackStackEntryCount() > 0) {
        fm.popBackStack();
    } else {
        super.onBackPressed();  
    }
}

你可以这样做,如果后面的堆栈中有任何碎片,则弹出它们,然后调用super.onBackPressed()

答案 1 :(得分:1)

致电getActivity().finish()

后尝试popBackStackImmediate()

答案 2 :(得分:0)

Fragment currentFragment = getSupportFragmentManager()
                          .findFragmentById(R.id.container);

if(currentFragment instanceof YourFragment) {          
     this.getSupportFragmentManager()
     .beginTransaction().remove(currentFragment).commit(); 
} 

如果片段对用户可见,这将退出片段。