最近發現以前在eclipse中使用的runonuithread在studio中不能使了,所以又找了幾個更新ui的方法
第一種方法
new handler(context.getmainlooper()).post(new runnable()
});
第二種方法
// 如果當前執行緒是ui執行緒,那麼行動是立即執行。如果當前執行緒不是ui執行緒,操作是發布到事件佇列的ui執行緒
// 因為runonuithread是activity中的方法,context是它的父類,所以要轉換成activity物件才能使用
((activity) context).runonuithread(new runnable()
});
第三種方法
第三種是使用handler的方法,往handler中傳送乙個訊息,然後handler接收到訊息,再在handler執行相應的操作
//這是接收訊息的handler
private handler handler = new handler()
}};//這是發訊息的
// 往handler傳送一條訊息 更改button的text屬性
message message = handler.obtainmessage();
message.what = 1;
handler.sendmessage(message);
在子執行緒中更新主窗體的控制項
定義乙個更新控制項的委託 定義乙個更新grid控制項的委託 public delegate void d updategrid datatable dt 定義乙個更新控制項的方法 public void bindgrid datatable dt 按鈕事件,初始化委託傳遞需要更新的內容,開始更新控制...
Android 在子執行緒中更新UI的幾種方法
第一種 new handler context.getmainlooper post new runnable context是你傳過來的context物件 另外一種 假設當前執行緒是ui執行緒,那麼行動是馬上執行。假設當前執行緒不是ui執行緒,操作是公布到事件佇列的ui執行緒 由於runonuit...
android 子執行緒更新UI例項
package com.example.test0207 handler import android.os.bundle import android.os.handler import android.os.message import android.view.menu import andr...