最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Android弹出dialog后无法捕捉back键的解决方法
时间:2017-11-06 编辑:猪哥 来源:一聚教程网
一、需求
在Android开发过程中,弹出dialog后无法捕捉back键,点击back按键无响应。
二、解决方案
原因:弹出dialog后,activity失去焦点,dialog获得当前焦点。
解决办法:在dialog中可以通过调用setOnKeyListener()方法来为dialog增加按键事件的监听。
private void createDialog() { AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle(getString(R.string.acq_select_hint)); builder.setPositiveButton(getString(R.string.dialog_cancel), (dialog, which) -> onCancelClicked(dialog)); builder.setCancelable(false); builder.setOnKeyListener((dialog, keyCode, event) -> { if (keyCode == KeyEvent.KEYCODE_BACK) { onCancelClicked(dialog); } return false; }); builder.create().show(); } private void onCancelClicked(DialogInterface dialog) { setResult(100); finish(); dialog.dismiss(); }
-
上一个: 支付宝花呗重复支付如何解决
-
下一个: 抖音直播充值的方法
相关文章
- kotlin gson反序列化默认值失效深入讲解 12-28
- Android使用Volley框架定制PostUploadRequest上传文件 12-26
- Android使用Volley实现上传文件功能 12-26
- Android自定义控件仿iOS滑块SwitchButton 12-26
- Android自定义控件实现带数值和动画的圆形进度条 12-25
- Android自定义控件实现折线图 12-25