我目前使用AsyncTask進行API調用並使用數據填充列表。 我有一個子菜單,其項目可以調用AsyncTask來填充數據,問題是,如果我點擊快速結束與合併結果顯然會導致AsyncTask在同一時間運行彼此。Asynctask API調用問題
處理這種情況的最佳方法是什麼?對不起,如果這是一個業餘問題。
我目前使用AsyncTask進行API調用並使用數據填充列表。 我有一個子菜單,其項目可以調用AsyncTask來填充數據,問題是,如果我點擊快速結束與合併結果顯然會導致AsyncTask在同一時間運行彼此。Asynctask API調用問題
處理這種情況的最佳方法是什麼?對不起,如果這是一個業餘問題。
我會用ProgressDialog
來顯示內容正在更新,當更新完成時,dismiss()
對話框。在發生這種情況時,您應確保您不接受ListView
上的觸摸輸入。 (當ProgressDialog
在前面時,這可能是默認情況下發生的,我目前不記得...)
查看這個link的例子。
您一次只能配置一個Asynch任務運行。 一個布爾變量在異步任務開始時立即設置爲true,並在其完成後立即設置爲false。
下次調用可能會等待此設置爲false。您也可以限制什麼是最短的時間,只有使API調用變得有意義。
請張貼一些代碼,以便於回答您的問題。 – Egor