SurfaceView里onKeyDown里KEYCODE_BACK失效
来源:互联网 发布:程序员手机壁纸1080 编辑:程序博客网 时间:2024/06/10 06:38
今天写一个程序,需要在SurfaceView中重载返回按钮,死活不行,重载函数如下:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if(keyCode == KeyEvent.KEYCODE_BACK){
xxxActivity.instance.handler
.sendEmptyMessage(xxxxActivity.MENU);
}
return super.onKeyDown(keyCode, event);
}
后来翻阅无数资料,终于发现光光在构造函数里添加setFocusable(true);是不够滴,还需要其他的,具体如下:
//设置焦点
setFocusable(true);
setFocusableInTouchMode(true);
requestFocus();
另外,如果只是这样,程序最后还是会去执行Activity的onKeyDown函数的,会直接退出程序,需要在Activity中再重载一下,代码如下
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
return false;
}
OK了,再次运行程序,成功!
- SurfaceView里onKeyDown里KEYCODE_BACK失效
- tabhost里不响应onkeydown的解决办法
- JavaScript里onkeyup,onkeydown和onkeypress的区别介绍
- surfaceview中重载onKeyDown函数
- overridePendingTransition在TabActivity里失效的解决办法
- Android里ListView的onItemClickListener点击失效
- 关于JFrame里setbackground()失效的解释
- 在有TabHost控件的页面,解决onKeyDown方法不能拦截KeyEvent.KEYCODE_BACK事件
- 在有TabHost控件的页面,解决onKeyDown方法不能拦截KeyEvent.KEYCODE_BACK事件
- TabActivity 的onkeydown失效问题
- Android java类里的surfaceview与surface
- Android OpenGL ES2.0里SurfaceView背景透明
- 关于.net里调用外部CSS失效的问题解决
- 关于.net里调用外部CSS失效的问题解决
- 对于rs.last()在aceess里失效的解决方法
- overridePendingTransition在TabActivity里使用会失效的解决办法
- 奇怪的bug,win8里的ctrl-backspace失效了
- ajax刷新的元素里jquery绑定事件失效
- win7下eclipse Classic版本搭建Android开发环境ADT插件出错的解决办法
- 转载的男人
- winfrom 小技巧
- WinMend products
- Android build过程中already defined by packages/apps 的解决方法
- SurfaceView里onKeyDown里KEYCODE_BACK失效
- linux c中的byte转换成short
- [每日一学]MFC学习笔记——简单计算器
- byte[]和InputStream的相互转换
- 学习python,从学习安装开始!
- sphinx的代码结构分析
- 去掉文件夹中.svn目录
- C语言删除文件夹下的目录
- 计算机专业考研方向及院校排名(转)