前不久做了一个新闻客户端,最后完善的时候发现有一个
handler.sendEmptyMessage(MyMessageInterfaces.HeaderRefreshComplete);
不管怎么样就发不出去消息,在网上也找了各种资料,最后弄清楚是处理Handler的Looper.Loop()是一个循环,并不会执行其后的代码,因此在sendMessage之后,程序就会去处理当前的Message将不再执行后面的代码。
最终解决方案如下:
if (saHandler != null)
saHandler
.sendEmptyMessage(MyMessageInterfaces.FIRST_RUN);
handler.sendEmptyMessage(MyMessageInterfaces.HeaderRefreshComplete);