Android – onBackPressed()不起作用

前端之家收集整理的这篇文章主要介绍了Android – onBackPressed()不起作用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有针对 Android 2.1的应用程序构建,我想覆盖后退按钮.

我跟着这个例子:

http://android-developers.blogspot.com/2009_12_01_archive.html

我的代码如下:

@Override
    public boolean onKeyDown(int keyCode,KeyEvent event)  {
        if (Integer.parseInt(android.os.Build.VERSION.SDK) < 5
                && keyCode == KeyEvent.KEYCODE_BACK
                && event.getRepeatCount() == 0) {
            Log.d("CDA","onKeyDown Called");
            onBackPressed();
        }

        return true;
    }

    @Override
    public void onBackPressed() {
    Log.d("CDA","onBackPressed Called");
        Intent setIntent = new Intent(Intent.ACTION_MAIN);
        setIntent.addCategory(Intent.CATEGORY_HOME);
        setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(setIntent); 

        return;
    }

它适用于pre 2.x设备,但不适用于具有2.1 update-1的Hero和具有2.2的Nexus One.

这个例子中是否有我遗漏的东西?或者任何人都可以指出它为什么不起作用?

我甚至没有在logcat中按下按钮.

解决方法

你在使用onKeyUp()吗?

在Android 2.x中仅使用Android 1.x中的onKeyDown()或Android 2.x中的onBackPressed()

原文链接:https://www.f2er.com/android/316731.html

猜你在找的Android相关文章