Android的 - onBack pressed()不工作 [英] Android - onBackPressed() not working

查看:306
本文介绍了Android的 - onBack pressed()不工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我对Android 2.1的应用程序的建筑,我想覆盖后退按钮。

I have an application building against Android 2.1 and I want to override the back button.

我跟这里的例子:

<一个href="http://android-developers.blogspot.com/2009_12_01_archive.html">http://android-developers.blogspot.com/2009_12_01_archive.html

和我的code是如下:

And my code is as follows:

    @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更新-1和Nexus One的2.2工作。


It works on pre 2.x devices but doesn't work on a Hero with 2.1 update-1 and a Nexus One with 2.2.

有somwthing我从这个例子里缺?或者,任何人都可以指出为什么它不工作?

Is there somwthing I am missing from the example? Or can anyone point out why it isn't working?

我不甚至可以按钮pressed在logcat中。

I dont even get the button pressed in the logcat.

推荐答案

您使用的的onkeyup()

使用刚的onkeydown()在Android的1.x或 onBack pressed()在安卓2.X

Use just onKeyDown() in Android 1.x or onBackPressed() in Android 2.x

这篇关于Android的 - onBack pressed()不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆