当我按下手机上的back键时,弹出对话框,选是则执行back行为,选否则留在当前的activity,什么都不做;对话框已经做好,但不论选是还是选否,都执行back动作,回到了上一级的activity,请问如何解决?
解决方案 »
- android虚拟机无法运行
- GraphicBufferAlloc::createGraphicBuffer (android 4.0)
- android
- google android 源代码的music的问题 音乐播放器问题
- android 关于虚拟机的安装问题(模拟器的配置,看不到虚拟机怎么回事)
- 关于android手机显示文件名的时候 出现出错误的现象
- 求android项目使用maven的意义?
- android Fragment碎片问题
- 使用ksoap2调用web service出现以下错误 有大神可以帮忙解决吗?
- 数据库操作的异常Cannot perform this operation because the connection pool has been close
- camera问题
- 两个Activity之间传值问题
选否后,return true
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
//show dialog
AlertDialog.Builder builder = new AlertDialog.Builder(this).setTitle("提示")
.setMessage("确定要退出吗?")
.setPositiveButton("确定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
System.exit(0);
}
})
.setNegativeButton("取消", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
builder.create().show();
break; default:
break;
}
return true;
}return true代表事件已经被消耗
return super.onKeyDown(keyCode, event)代表事件未被消耗,如果可能,将被继续分发。