MaterialDrawer片段中的后退按钮

时间:2016-05-07 11:04:13

标签: android navigation-drawer materialdrawer

我使用Mike Penz的MaterialDrawer,我遇到了问题。 我有Activity (AppCompat) 3 Fragmnts Activity包含所有fragments。 在fragment 2和3中,我在button

中启用了返回OnCreate
((AppCompatActivity)getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

并在Activity

@Override
    public void onBackPressed() {
        if (drawer.isDrawerOpen())
            drawer.closeDrawer();
        if (getFragmentManager().getBackStackEntryCount() == 1) {
            getSupportActionBar().setDisplayHomeAsUpEnabled(false);
            drawer.getActionBarDrawerToggle().syncState();
            getFragmentManager().popBackStack();
        } else if (getFragmentManager().getBackStackEntryCount() > 0)
            getFragmentManager().popBackStack();
        else
            super.onBackPressed();
    }

fragment上有效click 2和3 Back Button导致Drawer& { 如何通过按下按钮Drawer来禁用2 {3} fragment中的通话Back

当我使用标准Drawer我的主题为ActionBar时,没有这样的问题。

UPD 我需要点击工具栏中的切换后退按钮,没有智能手机实体按钮

1 个答案:

答案 0 :(得分:1)

更改

 if (drawer.isDrawerOpen())
     drawer.closeDrawer();
 if (getFragmentManager().getBackStackEntryCount() == 1) {
     getSupportActionBar().setDisplayHomeAsUpEnabled(false);
     drawer.getActionBarDrawerToggle().syncState();
     getFragmentManager().popBackStack();
 }

 if (drawer.isDrawerOpen())
     drawer.closeDrawer();
 else if (getFragmentManager().getBackStackEntryCount() == 1) {
     getSupportActionBar().setDisplayHomeAsUpEnabled(false);
     drawer.getActionBarDrawerToggle().syncState();
     getFragmentManager().popBackStack();
 }

你很高兴