如何处理后退按钮

时间:2016-12-01 22:48:04

标签: android android-fragments back

我知道这是一个常见问题,但没有一个主题有正确/有效的答案。

我有一个MainActivity,其中包含6个不同的片段,我有一个抽屉菜单,以及一个startActivity,它包含一个带有徽标的Flash屏幕,并在其中包含应用程序名称

我的问题如下:

  1. 当我在主要活动中并打开抽屉然后点击后退按钮关闭菜单然后当我再次打开它并点击后退按钮时它会转到startActivity而不关闭菜单

  2. 当我在其中一个片段中并且抽屉菜单打开时我点击后退按钮它会保持菜单打开并转到上一个片段/活动

  3. 我从不希望我的backButton带我去startActivity ......这可能吗?

  4. 这是我在MainActivity中的onBackPressed()方法

    @Override
    public void onBackPressed() {
        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    
    
    
        if (drawer.isDrawerOpen(GravityCompat.END )) {
            drawer.closeDrawer(GravityCompat.START);}
    
        else
          super.onBackPressed();
    
    
    }
    
    ps:如果你不知道我在说什么或者不知道答案,那么请不要输入任何答案或错误的答案,这只会使这个问题变得比需要更长。

    谢谢:)

1 个答案:

答案 0 :(得分:0)

使用" splashscreens"你可以从" back-stack"中删除它们。将android:noHistory属性设置为" true"在相关的< activity>中您AndroidManifest.xml文件中的条目。例如:

<activity
    android:name=".startActivity"
    android:noHistory="true" />