开发者

can't handle keyboard events android

I am trying to handle the back button event on my app but its not working at all. I have inplemented ActivityGroup in my app according to the post Android: TabActivity Nested Activities

I have added the following code according to many posts in this website

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    Log.d(this.getClass().getName(), "back button pressed: " + keyCode);
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
        Log.d(this.getClass().getName(), "back button pressed");
        return true;
    }
    re开发者_运维百科turn super.onKeyDown(keyCode, event);
}

but for some reason i still dont know i am not getting the lines to be logged, it goes back to the home screen. I know that the onBackPressed will not work for me because I need to have this app implemented using api level 4 and it is not available at this level.

My ActivityGroup has only two activities, one list view and a details view. I have put this code on all the three classes to try something different, but still cant get it working. I see "No keyboard for id 0" in the logs, but i dont think it means something that can be related to the problem.

I do appreciate any answer to this. Many thanks T


Add a log statement right above the return line and see what KeyEvent is happening.

like this:

Log.w(keyCode, "This is the key code that is returned");
return super.onKeyDown(keyCode, event);

Now look at the returned value and verify/compare it to KeyEvent.KEYCODE_BACK and this may point you in the direction of your problem.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜