摘要: >刚启动的时候,立即在非UI线程更新->不报错。 >休眠2s钟以后,更新——————>报错更新UI-->会调用checkForRelayout()方法-->invalidate()方法-->invalidate(true)方法,关注viewParent-->ViewRootImpl是ViewPare 阅读全文
posted @ 2016-05-10 12:51 沉默的羊癫疯 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 更新UI的4种方式: 1、runOnUiThread 2、handle post 3、handle sendMessage 4、view post 1.重写Activity中的runOnUIThread方法更新;2.调用View自身的post(Runnable run)方法更新;3.调用Handle 阅读全文
posted @ 2016-05-10 12:49 沉默的羊癫疯 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 6-1 主线程与子线程之间的信息交互 (10:33) 1.子线程通过 HandlerThread的thread.getLooper()绑定,2.在主线程的handler的handlerMessage中调用threadHandler.sendMessageDelay(msg,1000);向子线程发送消 阅读全文
posted @ 2016-05-10 12:47 沉默的羊癫疯 阅读(1021) 评论(0) 推荐(0) 编辑
摘要: 5-1 自定义与线程相关的Handler 1.在线程中通过Looper.prepare()方法创建一个与线程相关的Looper对象;2. 在线程中通过Handler的new关键字,创建一个Handler对象,这个对象在创建的时候会关联上1中创建的Looper对象3. 调用Looper对象的loop( 阅读全文
posted @ 2016-05-10 12:43 沉默的羊癫疯 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 4-1与Looper、MessageQueue的关系 Handler类的作用: 在新启动的线程中发送消息 在主线程中获取、处理消息。 Android为什么套设计只能通过Handler机制更新UI呢? 假设如果在一个Activity当中,有多个线程去更新UI,并且都没有加锁机制,这样子会产生更新界面错 阅读全文
posted @ 2016-05-10 12:21 沉默的羊癫疯 阅读(134) 评论(0) 推荐(0) 编辑