Android handleMessage和sendMessage 簡單示例
阿新 • • 發佈:2019-01-29
用Handler可解決在非主執行緒中無法更改UI的問題。
先在主執行緒中定義handler,接收別的執行緒的Message,改變UI,
在另一執行緒中執行任務,並用handler傳送Message到UI執行緒,
Message提供了攜帶資料的方法 setData(Bundle data)
1.
//主執行緒中定義handler,接收別的執行緒的Message,改變UI
private Handler handler=new Handler()
{
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch(msg.what){
case 1:
//TO-DO LIST
break;
}
}
};
2.
//在另一執行緒中執行任務,並用handler傳送Message到主執行緒
Message message=new Message();
message.what=1;
handler.sendMessage(message);