我有一個textview,我想每次更新我的asynctask完成。從AsyncTask中onPostExecute更新textview
但是,從目前爲止,只有在使用setContentView()
之前只能在onPostExecute
中完成。但是由於我不知道當任務完成時用戶目前處於哪個視圖,它聽起來不像是我的一個好的解決方案。即使我可以獲得當前視圖,重繪視圖?
感謝
我有一個textview,我想每次更新我的asynctask完成。從AsyncTask中onPostExecute更新textview
但是,從目前爲止,只有在使用setContentView()
之前只能在onPostExecute
中完成。但是由於我不知道當任務完成時用戶目前處於哪個視圖,它聽起來不像是我的一個好的解決方案。即使我可以獲得當前視圖,重繪視圖?
感謝
我認爲AsyncTask
是一個不錯的選擇當前的用戶界面需要通過任務進行更新時。在你的情況下,我可能會嘗試看看Service
是否是更好的選擇。
不好意思看看服務,謝謝 – Johan 2012-07-05 22:48:47
正如我所知,並始終使用AsyncTask執行重型任務而不阻塞主UI線程。手段用戶在需要完成耗時的工作時操作一些活動。 AsyncTask完成這項工作並反映UI的結果。用戶高興。如果你不知道用戶在哪裏,那麼可能AsyncTask不是一個正確的解決方案,你需要一個服務。它會完成工作併發送一個準備就緒的通知。 Tappi9ng通知將打開一些數據的活動。
你爲什麼不「知道用戶目前處於哪個視圖」? – Squonk 2012-07-05 22:45:13
@Squonk因爲取決於用戶當前正在查看什麼活動,他可能正在看別的不是「家庭」視圖 – Johan 2012-07-05 22:48:08
好,所以請使用單詞活動而不是查看(這是一個完全不同的類)。另外,要回答這個問題 - 定義一個'Interface'並讓所有的'Activities'以他們自己的方式實現它。然後你需要做的就是從'onPostExecute'調用'Interface'的相關方法。 – Squonk 2012-07-05 22:51:58