Android中Alertdialog對話框點擊消失?


       在開發的時候遇到一個問題,就是一觸摸對話框邊緣外部,對話框會自動消失。這個問題很糾結啊,查找了一下發現從Android 4.0開始,AlertDialog有了變化,就是在觸摸對話框邊緣外部,對話框會自動消失,查了源碼,找到解決辦法:

 

       研究其父類時候發現,可以設置這么一條屬性,在AlertDialog.Builder.create()之后才能調用這兩個方法

 

方法一:

setCanceledOnTouchOutside(false);調用這個方法時,按對話框以外的地方不起作用。按返回鍵還起作用

方法二:

setCancelable(false);調用這個方法時,按對話框以外的地方不起作用。按返回鍵也不起作用

這兩個方法都屬於Dialog方法,可查閱源碼

 

修改后的源碼如下:

 

case 1:
                    dismissDialog(1);
                    new Builder(SplashActivity.this).setTitle("提示").setCancelable(false)
                            .setMessage("獲取軟件初始化信息失敗!\n請檢查網絡是否通暢。")
                            .setPositiveButton("確認", new OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    dialog.dismiss();
                                    SplashActivity.this.finish();
                                }
                            }).show();
                    
                    break;

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM