Android彈出dialog后無法捕捉back鍵的解決方法
一、需求
在Android開發(fā)過程中,彈出dialog后無法捕捉back鍵,點擊back按鍵無響應(yīng)。
二、解決方案
原因:彈出dialog后,activity失去焦點,dialog獲得當(dāng)前焦點。
解決辦法:在dialog中可以通過調(diào)用setOnKeyListener()方法來為dialog增加按鍵事件的監(jiān)聽。
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(); }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android編程實現(xiàn)圖片的瀏覽、縮放、拖動和自動居中效果
這篇文章主要介紹了Android編程實現(xiàn)圖片的瀏覽、縮放、拖動和自動居中效果,以具體實例形式分析了Android針對圖片各種常見顯示效果的布局及功能實現(xiàn)技巧,需要的朋友可以參考下2015-11-11使用android-apktool來逆向(反編譯)APK包方法介紹
這篇文章主要介紹了使用android-apktool來逆向(反編譯)APK包方法介紹,本文講解了版本問題、使用apktool、反編譯decode、rebuild重打包等內(nèi)容,需要的朋友可以參考下2015-04-04Android 高仿微信轉(zhuǎn)賬金錢輸入框規(guī)則
這篇文章主要介紹了Android 高仿微信金錢輸入框規(guī)則的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-12-12Android studio實現(xiàn)左右滑動切換圖片
這篇文章主要為大家詳細(xì)介紹了Android studio實現(xiàn)左右滑動切換圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05Android中使用Matrix控制圖形變換和制作倒影效果的方法
這篇文章主要介紹了Android中使用Matrix控制圖形變換和制作倒影效果的方法,用Matrix來作矩陣變化十分強(qiáng)大,文中的制作倒影的例子便是一個十分巧妙的運用,需要的朋友可以參考下2016-04-04Android編程獲取網(wǎng)絡(luò)時間實例分析
這篇文章主要介紹了Android編程獲取網(wǎng)絡(luò)時間,結(jié)合實例形式對比分析了Android通過訪問網(wǎng)絡(luò)及通過GPS獲取網(wǎng)絡(luò)時間的具體步驟與實現(xiàn)技巧,需要的朋友可以參考下2016-01-01Android編程實現(xiàn)自定義ProgressBar樣式示例(背景色及一級、二級進(jìn)度條顏色)
這篇文章主要介紹了Android編程實現(xiàn)自定義ProgressBar樣式功能,涉及針對背景色及一級、二級進(jìn)度條顏色的操作技巧,需要的朋友可以參考下2017-01-01Android使用onCreateOptionsMenu()創(chuàng)建菜單Menu的方法詳解
這篇文章主要介紹了Android使用onCreateOptionsMenu()創(chuàng)建菜單Menu的方法,結(jié)合實例形式較為詳細(xì)的分析了Android基于onCreateOptionsMenu創(chuàng)建菜單的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下2016-11-11