国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android中阻止AlertDialog關閉實例代碼

2020-01-02 06:59:58
字體:
來源:轉載
供稿:網友

Android如何關閉AlertDialog.Builder對話框呢?AlertDialog.Builder對話框沒有類似finish()或者dismiss()這樣的方法。

但是它的父類AlertDialog有dismiss方法,而且AlertDialog.Builder在.show()的時候會得到一個AlertDialog對象,我們就可以用dismiss方法將該Builder關閉。

AlertDialog.Builder builder = new AlertDialog.Builder(this); AlertDialog dialog = builder.show(); dialog.dismiss(); 

關于Android阻止AlertDialog關閉具體代碼如下所示:

AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());builder.setTitle("測試");LayoutInflater inflater = getActivity().getLayoutInflater();View view = inflater.inflate(R.layout.dialogfragment_num_input, null);builder.setView(view);builder.setPositiveButton("確定",new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int id) {Field field = null;try {//通過反射獲取dialog中的私有屬性mShowingfield = dialog.getClass().getSuperclass().getDeclaredField("mShowing");field.setAccessible(true);//設置該屬性可以訪問} catch (Exception ex) {}String inputValue = String.valueOf(mEdit.getText());if (inputValue == null || "".equals(inputValue)) {try {//設置dialog不可關閉field.set(dialog, false);dialog.dismiss();} catch (Exception ex) {}} else {////做自己的事//try {//關閉field.set(dialog, true);dialog.dismiss();} catch (Exception ex) {}}}});builder.setNegativeButton("取消",new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int id) {Field field = null;try {//通過反射獲取dialog中的私有屬性mShowingfield = dialog.getClass().getSuperclass().getDeclaredField("mShowing");field.setAccessible(true);//設置該屬性可以訪問} catch (Exception ex) {}try {field.set(dialog, true);dialog.dismiss();} catch (Exception ex) {}}});builder.create();

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江安县| 宁蒗| 岳西县| 岳阳市| 玛沁县| 军事| 阳东县| 柳河县| 察雅县| 阿鲁科尔沁旗| 沙坪坝区| 利津县| 永平县| 东光县| 日土县| 迭部县| 潼南县| 磴口县| 甘孜| 金阳县| 会昌县| 湾仔区| 土默特左旗| 兴业县| 邢台县| 揭阳市| 昆山市| 永善县| 英吉沙县| 临夏县| 榆中县| 天祝| 曲沃县| 靖宇县| 金沙县| 喀喇沁旗| 信丰县| 临沭县| 南雄市| 大姚县| 辛集市|