1.为什么android要求只能在UI主线程中更改View呢?
android是单线程模型,因为如果支持多线程修改View的话,由此产生的线程同步和线程安全问题将是非常繁琐的,所以Android直接就定死了,View的操作必须在UI
线程,从而简化了系统设计。
2.子线程无法更新ui,所以出现了handler作为子线程和主线程连接的桥梁;
要实现handler需编写一个类继承handler并重写其handleMessage方法;
handleMessage方法通过子线程发送过来的数据选择判断做更新ui的操作;
子线程中,通过发送数据给handler来传递信息;
注意:
实例化handler类对象只能在主线程中,不能在子线程中。