2015-04-22 94 views
0

我有一個AsyncTask,它在運行時顯示一個對話框。當我點擊取消:Android AsyncTask取消消息

if (isCancelled()) break; 

如何顯示在對話框中的消息(點擊「OK」按鈕),當我取消的AsyncTask?

感謝

+0

內,創造了runOnUiThreadBlock如果聲明。在塊內部,顯示一個對話框。 –

回答

1

的AsyncTask剛剛爲

@Override 
protected void onCancelled() { 
    super.onCancelled(); 
    // Show the dialog 
} 

onCancelled如果取消被稱爲只叫的方法。但請注意文檔:cancel(boolean)被調用且doInBackground(Object[])已完成後,在UI線程上運行。

這意味着onCancelled不會立即在任何線程上調用。

0

你只需要創建一個警告對話框,並在的AsyncTask

的onCancelled方法
@Override 
protected void onCancelled() { 
    super.onCancelled(); 
    runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
       dialog.show(); 
     } 
    }); 
} 

要知道,在創建對話框的顯示,你可以遵循這樣的:Alert dialog with a button

+1

onCancelled已經在UI線程上運行 –