2011-09-03 50 views
0

我正在嘗試將Twitter與我的應用程序集成在一起,我想添加一個AlertDialog,它將在用戶按下按鈕後出現,並且此AlertDialog將詢問用戶是否要發佈推文(推文對所有用戶都是相同的,就像推廣推文)。我的問題是,如果有什麼辦法,使在一段時間後的警告對話框中消失,就像5秒。如何使AlertDialog消失?

我發現this但我不能完全確定它是如何工作的。我將不勝感激任何幫助。

+0

你提到的帖子就是你所能得到的。有一個處理程序在「時間」毫秒後刪除AlertDialog d。 – weakwire

回答

0

聲明你的Handler,它會處理一段時間後關閉對話框,並聲明將暫停當前線程並保持對話框的線程一段時間。在線程的Runnable中發出聲明,睡眠該線程一段時間,例如Thread.sleep(5000);,然後使用Handler對象到sendMessage();在Handler onHandleMessage()方法中,只需執行dialog.dissmiss();在執行一些操作後,在要保留對話框的位置,並使用myThread.start();啓動線程。每次當你需要時,注意線程的實例化。

+0

2015年更新。 onHandleMessage似乎已經過時,請嘗試使用的handleMessage(信息MSG)來代替。 –

0

您無法從其他線程訪問UI,因此您必須使用處理程序在線程中對UI進行修改。

這是你使用,使對話框消失代碼:

d.dismiss(); 

,這是處理程序代碼

Handler handler= new Handler() 

link使用的方法和發送給它的時間和對話對象