Android在其他线程中更新UI

public class TransferTools {

	private static final int MSG_START = 1001;
private static final int MSG_TRANSFERRING = 1002; public void setTransferListener(TransferListener mListner) {
mTransferListener = mListner;
} public interface TransferListener {
/**
* 开始
*/
void onStart(); void onTransfer(String text);
} private static TransferListener mTransferListener = null; private static Handler sHandler = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(android.os.Message msg) {
if (mTransferListener == null) {
return;
}
switch (msg.what) { case MSG_START:
mTransferListener.onStart();
break;
case MSG_TRANSFERRING:
mTransferListener.onTransfer((String) msg.obj);
break; default:
break;
} };
}; private void work() {
//...耗时操作,如网络请求
Message msg = sHandler.obtainMessage();
msg.what = MSG_START;
msg.obj = message;
sHandler.sendMessage(msg);
}
}

  

上一篇:css display属性详解


下一篇:Oracle使用expdp/impdp迁移数据