2015-01-10 65 views
-3

我有一個類關閉的擴展對話框

public class DialogEx extends Dialog 
{ 
// 
} 

在某處,我可以使用DialogEx這樣

DialogEx d=new DialogEx(); 
d.show(); 
//d.cancel 

我不知道如何關閉DIALOGEX當我點擊它的臉。我認爲在上面的類DialogEx的代碼裏面,我應該實現一個setOnClickListener,然後調用從Dialog繼承的this.close()。可悲的是,在基類中沒有這樣的方法。 :-(

我的問題是:我需要實現DIALOGEX內close方法,我知道dismiss我可以從類的外部調用

+0

d.dismiss()方法關閉對話框 –

+0

Try d.dismiss(); – Simar

+0

嘗試'd.dismiss();'而不是'd.close()' –

回答

1
final DialogEX dialog = new DialogEX(YourActivity.this); 

你需要小寫對話框

public void onClick(View v) { 
    dialog.dismiss(); 
} 

而且AlertDialog.Builder可能是一個更好的選擇適合您。

您可以在對話框中撥打dismiss

+0

謝謝你的回答。請重新閱讀我的帖子。 – user1425671

+0

根據官方文件: '關閉此對話框,將其從屏幕上移除。這個方法可以從任何線程安全地調用。 **請注意,您不應該重寫此方法**以在對話框關閉時執行清理,而是在onStop()中實現該方法。' –