實現Dialog自動關閉
阿新 • • 發佈:2018-12-29
最近做專案有用到Dialog, 當載入資料時, 就啟動. 因為資料沒載入完, 限制使用者的操作, 把Dialog設定成不能取消:
<span style="color:#33cc00;"><span style="font-size:18px;">dialog.setCancelable(false);</span> </span>
但載入過久會影響使用者體驗, 就想了個自動取消Dialog的方法: 用Handler延時取消:
呼叫如下, Dialog就可以關閉<span style="font-size:18px;color:#33cc00;">public static void closeDialog(long closetime, final Dialog dialog){ new Handler(){ <span style="white-space:pre"> </span>@Override public void handleMessage(Message msg) { <span style="white-space:pre"> </span>if(dialog.isShowing()){ dialog.dismiss(); } }; }.sendEmptyMessageDelayed(0, closetime); }</span>
<span style="font-size:18px;color:#33cc00;">closeDialog(5000, mdialog);</span>