如何在android中的活动中使用DrawerLayout时处理Back按钮?

and*_*dev 0 android drawerlayout

DrawerLayout在我的申请中使用.现在,当我按下后退按钮时,它首先关闭DrawerLayout,需要再次单击后退按钮,然后它将重定向到上一个屏幕.

但我想避免这个DrawerLayout关闭后退按钮.任何人都知道如何防止这种情况?

请告诉我我被困在这上面的方式.

提前致谢.

Abi*_*bi- 5

DrawerLayout截取默认值onKeyDown,onKeyUp因此只需创建新的类扩展DrawerLayout 和覆盖此方法

这样的事情:

import android.content.Context;
import android.support.v4.widget.DrawerLayout;
import android.util.AttributeSet;
import android.view.KeyEvent;

public class MyDrawerLayout extends DrawerLayout {

    public MyDrawerLayout(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    public MyDrawerLayout(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public MyDrawerLayout(Context context) {
        super(context);
    }

    @Override
    public boolean onKeyUp(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            return false;
        }
        return super.onKeyUp(keyCode, event);
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            return false;
        }
        return super.onKeyDown(keyCode, event);
    }   
}
Run Code Online (Sandbox Code Playgroud)