2012-11-26 105 views
2

我正在創建一個Android應用程序,我在其中管理一些剩餘部分。我希望當某個事件發生時,對話框顯示出來,這對我來說不是問題。但是我希望如果用戶在兩分鐘內沒有做出任何迴應,對話框會自動解除。我怎樣才能實現這個?Android中的自動對話框關閉

+0

寫一個線程可能其中顯示了dailog後兩分鐘跑...如果用戶didnt作出任何迴應使用解僱()來解僱我認爲它能夠更好地檢查之前關閉該對話框...對話框對象是否爲空。如果它是空的,我認爲你不需要解僱,如果不解僱的話 –

回答

4
static AlertDialog alert = ....; 


alert.show(); 

Runnable dismissRunner = new Runnable() { 
    public void run() { 
     if(alert != null) 
      alert.dismiss();    
    }; 
new Handler().postDelayed(dismissRunner, 120000); 

不要忘記在您的常規對話框中關閉代碼(即按鈕onClick)alert = null

1
final Timer t = new Timer(); 
       t.schedule(new TimerTask() { 
        public void run() { 
         alert.dismiss(); 
         t.cancel(); 
        } 
       }, 2000);