在做畢設時遇到乙個問題,如何用通過service得到的資料來更新fragment的ui?
有多種方法,首先嘗試使用較為簡單的handler訊息機制。
具體步驟如下:
1.主線程中建立乙個handler
private handler handler = new handler();
};2.重寫handler的handlermessage方法
3.子執行緒中建立乙個message物件,將獲取的資料繫結給msg
message msg = new message();
4.主線程中的handler物件在子執行緒中將message傳送給主線程
handler.sendmessage(msg);
5.主線程中handlermessage方法接受子執行緒發來的資料,就可以做更新ui的操作。
Handler訊息機制
android的訊息機制主要是指handler的執行機制,也就是handler message messagequeue looper threadlocal之間的工作過程。handler 主要用於傳送和處理訊息。messagequeue 訊息佇列,主要用於存放所有通過handler傳送的messa...
Handler訊息傳遞機制
使用方法 1.若在ui主線程中,則系統已經初始化了乙個looper物件 因為主線程也是乙個訊息迴圈,因此具有乙個looper,主線程的所有工作都是由其looper完成的looper不斷從訊息佇列中抓取訊息,然後完成訊息指定的任務 否則要自己建立乙個looper物件並啟動。我們無法通過構造器建立loo...
Handler訊息傳遞機制
android中ui並不是執行緒安全的,什麼是執行緒安全呢 這是維基給出的解釋。如果有多個執行緒操作ui,會造成執行緒不安全問題。因此android有規定 ui元件只能在activity中對ui進行操作。當乙個程式第一次啟動時,android會同時啟動乙個main thread 主線程 主要負責與u...