handlermessage更新UI的问题

1.使用handler更新UI时出现空指针异常,看来看去没看出什么问题
这是异常信息:
图片描述

以下是代码,子线程中的sendmessage是传递成功的,handlemessage中用toast显示msg也是有的,就是settext时候报空指针异常,求大神帮忙

图片描述
图片描述

阅读 4.8k
6 个回答

把完整的代码贴上来,别用截图

从楼主的代码看,最有可能报空指针的就是 editText 了,你可以下个断点看一下,这个时候初始化成功了吗

在edittext被findviewbyid后确认一下有没有获取到,是不是id错了。
另外message推荐使用Message msg = handle.obtainMessage()的方式。

我猜是因为activity继承了Thread或者Runnable,线程运行了,而edittext还没有初始化。

话说在用string之前首先先判断一下是否这个string为null, 然后再使用。这个是个习惯

没有看到楼主从哪里运行子线程。
错误信息显示NullPointerException发生在MainActivity的Line 67。多半也就是editText的问题。
有可能子线程已经sendMessage了,Activity的onCreate()方法还没执行。
也有可能 findViewById() 返回了null(填错id什么的)。由于 null的强制类型转换不会出错,所以填错了也不会抛 Exception。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题