android.view.ViewRootImpl$CalledFromWrongThreadException: only the original thread that created a view hierarchy can touch its views.
一 .什么是handler:
handler通过发送和处理Message和Runnable对象来关联相对应线程的MessageQueue.
1.可以让对应的Message 和 Runnable在未来的某个时间点进行相应处理.
2.让自己想要处理的耗时操作放在子线程,让更新ui的操作放在主线程.
二 . handler的使用方法
post(runnable)
public final boolean post(Runnable r)
{return sendMessageDelayed(getPostMessage(r), 0);}
2 .sendMessage(message)
public final boolean sendMessage(Message msg)
{
return sendMessageDelayed(msg, 0);}
三 .Handler的内部机制
四 . Handler内存泄漏
- 非静态匿名内部类,修改成静态内部类.
- 在 Activity onDestory()方法总调用handler.removeMessages()方法或者handler.removeCallbacks()方法来