我有一個自定義對話框,從中啓動BackgroundWorker異步任務,並且我想關閉BackgroundWorker後執行中的當前對話框,但我不知道如何獲取當前對話框,因爲我在另一個類中創建了它。如何關閉其他類中的當前對話框 - Android
非常感謝。
我有一個自定義對話框,從中啓動BackgroundWorker異步任務,並且我想關閉BackgroundWorker後執行中的當前對話框,但我不知道如何獲取當前對話框,因爲我在另一個類中創建了它。如何關閉其他類中的當前對話框 - Android
非常感謝。
如果您要訪問您的對話框(DialogFragment擴展我猜)你有很多方法:
a)使您的BackgroundWorkerAsyncTask成爲您的DialogFragment的內部類,以便能夠訪問您父級的屬性。如果你在其他類中需要它(這就是爲什麼我認爲你使它成爲一個外部類),你可以在你的DialogFragment中有你自己的內部AsyncTask類,並從你的BackgroundWorkerAsyncTask中擴展它。
c)從您的BackgroundWorkerAsyncTask構造函數中傳遞您想要管理的對話框,並在您的postExecute中將其解除。
等
選擇任何適合您的需求。
只需使用:
alertDialogue.dismiss();
但如何將alertDialogue與我目前打開的自定義對話框相鏈接? –
發佈您的代碼.. –
不需要我用另一個解決方案解決問題,我剛剛在我的BackgroundWorker中傳遞了我的Dialog的構造函數。謝謝 –
您可以通過不同的方式做到這一點。
您可以在該類中調用解除方法 –
確保在關閉活動之前關閉對話框,否則您將面臨'android.view.WindowLeaked'異常。 –
dimiss()就足夠onPostExecute – Qasim