您的位置:首页 > 其它

ViewFlipper下,通过onKeyDown不能获取enter键的解决方法

2012-11-16 21:33 267 查看
安卓电视盒软件定制:www.dfsuiren.com

在ViewFlipper下,通过onKeyDown不能获取enter键。这个问题,搞晕我好几天了。在ViewFlipper的方法里应该在onKeyDown之前获取到了enter键。然后直接跳过onKeyDown方法。最后我使用dispatchKeyEvent,重写这个方法,就可以获取enter键。

@Override

public boolean dispatchKeyEvent(KeyEvent event) {

if(event.getKeyCode() == KeyEvent.KEYCODE_DPAD_CENTER ) {

//TODO 代码

Intent video_intent1 = apk.get_desk_intent(1);

if(video_intent1!= null)

startActivity(video_intent1);

return true;//注意这儿返回值为true时该事件将不会继续往下传递,false时反之。根据程序的需要调整

}

return super.dispatchKeyEvent(event);

}

dispatchKeyEvent和onKeyDown关系:

当键盘按下时

首先触发dispatchKeyEvent

然后触发onUserInteraction

再次onKeyDown

如果按下紧接着松开,则是俩步

紧跟着触发dispatchKeyEvent

然后触发onUserInteraction

再次onKeyUp

dispatchKeyEvent是做分发的工作,如果你想要onKeyDown还可以接收到应该这样实现
public boolean dispatchKeyEvent(KeyEvent event){

return super.dispatchKeyEvent(event);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐