android 里监听手机返回按钮事件

难道你还记得我吗 发布于 2012/04/25 18:22
阅读 3K+
收藏 0
android在弹出了一个对话框视图里,这时候如果按了手机返回键,对话框会消失,怎么捕捉这一次返回按钮的事件?
加载中
0
z
zztt

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setOnKeyListener(监听对象);

在这里面监听就OK了

难道你还记得我吗
难道你还记得我吗
高人,麻烦帮我再看一下,我的问题又来了
难道你还记得我吗
难道你还记得我吗
成功了,太感谢你们了。
姚远
姚远
嗯嗯,最好的办法
0
Monkey
Monkey
这事件好像是在那个对话框背后的那个activityl的key事件里。
难道你还记得我吗
难道你还记得我吗
怎么监听呢很纠结啊
0
姚远
姚远

onKeyDown(int keyCode, KeyEvent event)

if(keyCode == KeyEvent.KEYCODE_BACK){

        //do something

}

 

难道你还记得我吗
难道你还记得我吗
把这个方法写在当前activity里,这样子我也试过,这个函数只能是在没有对话框的时候按返回键的时候触发。我目前的情况是activity里有一对话框视图,如果这时候按返回键,怎么监听呢?如果也是这个方法,这个方法写在什么地方呢?
0
姚远
姚远

可不可以用Activity代替dialog,把Activity写成dialog

android:theme="@android :style/Theme.Dialog"

这样就能听KeyEvent.KEYCODE_BACK


 


难道你还记得我吗
难道你还记得我吗
没这么弄过,我尝试一下,谢谢啦
0
姚远
姚远
还有就是Activity弹出dialog,按back键,你想要做什么?不让dialog消失吗?
难道你还记得我吗
难道你还记得我吗
不是的,我是想让这个对话框消失以后,跳到上一acitvity
0
姚远
姚远
如果是上面那样的话,试试:

public void setCancelable (boolean flag)

Since: API Level 1

Sets whether this dialog is cancelable with the BACK key.

0
难道你还记得我吗
难道你还记得我吗
这个时候按返回键的时候,我是想让软键盘消失,可是因为在对话框中监听了返回按钮,直接返回到上一个activity了。这肿么办,囧
返回顶部
顶部