如何保持UI線程等待,直到我從AsyncTask獲取數據。 我試圖從服務器加載一些信息和圖像,並分別顯示到textview和imageview。但是UI線程在後臺線程完成任務之前訪問該字段。所以空值被檢索和應用程序崩潰。UI線程和AsyncTask同步
-1
A
回答
0
在完成後臺任務後,您可以更新AsyncTask的onPostExecute中的UI。
對於崩潰,通過訪問UI線程上的字段=>您需要將此代碼也轉換爲onPostExecute方法。
所以所需的數據將可用,該字段將有一個值。 所以崩潰問題可以解決。
-1
如果您正在構建,基本上擦傷HTML源代碼的應用程序,然後您處理這個「串」,你所能做的就是
private class Scrapper extends AsyncTask<String, Void, Void> {
@Override
protected Void doInBackground(String... params) {
//Get the source here
}
然後在onCreate方法
Scrapper scrapper = new Scrapper();
String URLSource = scrapper.execute("url here").get();
//Additional code to manipulate the string
然而通常不建議這樣做,因爲顯然它會將整個UI線程置於保持狀態,並且如果源很大,則會有很長的延遲。
+0
如果有人低估,他們是否介意解釋爲什麼? –
相關問題
- 1. 同步線程 - 沒有UI
- 2. Android AsyncTask塊UI線程
- 3. 簡化後臺線程創建和UI線程同步的類
- 4. 線程和同步
- 5. 線程和同步
- 6. Android AsyncTask同步
- 7. ArrayList,線程和同步 - 如何準確同步多個線程
- 8. Java線程和同步塊
- 9. 的Java同步和線程
- 10. Java - 多線程和同步
- 11. C#線程和同步
- 12. 線程和同步示例
- 13. boost :: asio,線程和同步
- 14. 使用AsyncTask凍結UI線程
- 15. 非同步線程停止主UI線程
- 16. 單線程同步和異步混亂
- 17. 線程/同步
- 18. 線程同步
- 19. 線程同步
- 20. 線程同步
- 21. 線程同步
- 22. 線程同步
- 23. 線程同步
- 24. 線程同步
- 25. WPF同步動畫和UI線程死鎖
- 26. 如何從另一個線程同步UI和訪問對象?
- 27. 更新UI主線程從子線程AsyncTask
- 28. 同步方法是否在UI線程(Android)的不同線程上運行?
- 29. KSOAP 2通信 - 發送的AsyncTask結果UI線程和打印
- 30. 多線程同步
setText&Image in overriden onPostExecute AsyncTask方法,它在UI線程中調用並在AsyncTask終止之後。 –