国产探花免费观看_亚洲丰满少妇自慰呻吟_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();

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汝州市| 保山市| 华安县| 新乡县| 桂林市| 太谷县| 辰溪县| 贵定县| 霸州市| 红安县| 诸城市| 广平县| 天台县| 保康县| 新竹市| 农安县| 固镇县| 巴里| 阿克陶县| 镇赉县| 英吉沙县| 舟山市| 秦安县| 西贡区| 池州市| 驻马店市| 高密市| 佛冈县| 嘉善县| 会宁县| 尚志市| 登封市| 台中县| 宁河县| 阿拉善右旗| 巧家县| 乐亭县| 巫溪县| 九台市| 揭东县| 隆尧县|