android异步消息处理之runOnUiThread(Runnable runnable)
1.Activity中的方法runOnUiThread(Runnable runnable)其实是一个异步消息处理机制的接口封装,它背后实现的原理其实就是android原生的Handler的原理。
2.用法
android在UI线程中是不能进行比较耗时的操作的(会出现ANR现象),所有耗时的操作都应在子线程中执行,那么在子线程中操作UI线程中相关变量的一个比较方便的做法就是如下:
范例:
new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
Logger.t("testRxJava").e(e.getMessage());
}
MainActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
mTvSpan.setText("哈哈哈");
}
});
}
}).start();