Android 主线程和子线程通信问题
Android 现在不支持View在子线程中创建及调用其方法。如果要实现子线程内容更新之后,将结果及时反馈到主线程中,该如何出来呢?
可以在主线程中创建Handler来实现。 这样子线程的结果,可以通过发消息的形式,通知主线程,然后主线程中去及时更新View控件。
Handler的使用方式:
mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case xxxxxx:
updateLotteryInfo();
break;
default:
break;
}
}
};
发消息的时候,可以: mHandler.sendEmptyMessage(xxxxx);
如果添加内容,可以:mHandler.obtainMessage(MessageName, MessageContent).sendToTarget();
在方法handleMessage 中可以msg.obj.toString() 获取Message的内容。
发送消息还有其他的方式,可以自行查阅
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。