android回退键不触发onkeydown事件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android回退键不触发onkeydown事件相关的知识,希望对你有一定的参考价值。
public class MainActivity extends ActivityGroup implements OnGestureListener,
OnTouchListener
。。。。。。。。。。。。。。。
/**
* 回退键
*/
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
Log.i("main","onkeydown");
if(keyCode==KeyEvent.KEYCODE_BACK)
new AlertDialog.Builder(MainActivity.this).setTitle("音乐盒")
.setIcon(R.drawable.icon_1)
.setMessage("你确定要离开吗?")
.setPositiveButton("确定",new DialogInterface.OnClickListener()
@Override
public void onClick(DialogInterface dialog, int which)
//发送广播给services,使其停止播放。
finish();
).setNegativeButton("取消",new DialogInterface.OnClickListener()
@Override
public void onClick(DialogInterface dialog, int which)
).show();
return super.onKeyDown(keyCode, event);
点击模拟器上都回退键就直接退出了。Log也没有打印。
解决啦。于不是继承都activity有关。extends ActivityGroup 。所以onKeyDown不会执行。
# public boolean dispatchKeyEvent(KeyEvent event)
# System.out.println(KeyEvent.KEYCODE_BACK+"--------------------"+event.getKeyCode()+"---------------------"+event.getAction());
# long exitTime = 0;
# if(event.getKeyCode()==KeyEvent.KEYCODE_BACK && event.getAction()==KeyEvent.ACTION_DOWN)
# if((System.currentTimeMillis()-exitTime) > 2000)
# Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show();
# exitTime = System.currentTimeMillis();
# else
# finish();
# System.exit(0);
#
# return true;
#
#
#
# return super.dispatchKeyEvent(event);
#
这样就没问题啦。。。运行OK
没用。还算不行
参考技术B 经验证 在我的手机上运行正常追问我在adb模拟器上运行的。但是点回退键的时候更本不调用该方法。不过其他键就能调用,比如数字键啥的,也能log出来。就是点回退键不进入该方法。
追答你的模拟器有没有问题,你可以把这段代码注释掉,看看点back程序是否会退出。
追问回退键是回退出程序啊,也就是点击回退键就退出整个程序啦,更本没进该方法。
追答Log.i("main","onkeydown");
这个log有输出吗?
如果没有 可能你的模拟器有问题。。。。
没有。所以才说更本就没进入到onkeydown方法里面啊。不知道同 extends ActivityGroup implements OnGestureListener,OnTouchListener有没有关系。
本回答被提问者采纳onkeydown事件不触发了,怎么办
如果全键盤给你一个简单的方法在你的窗体上放一个 Popmenu 在POPMENU裏增加一项叫ESC吧。POPMEN每项都有快键捷的,设置好了就行了。这种方式比较方便你统一管理。 参考技术A 你能不能把问题说清楚
以上是关于android回退键不触发onkeydown事件的主要内容,如果未能解决你的问题,请参考以下文章
Linux终端实现回退键(backspace)删除错误输入的功能
react-navigation从引导页跳转到主页,物理回退键,不能再返回到引导页,代码怎么写?
OnKeyPress、onKeyDown、onKeyUp 事件在 Android 下的 Firefox/Chrome 中在键入字母时未触发