Android Can';即使使用处理程序,也不能从另一个线程访问视图

Android Can';即使使用处理程序,也不能从另一个线程访问视图,android,multithreading,view,handler,Android,Multithreading,View,Handler,我正在编写一个简单的应用程序,用于在服务器和本地网络上的应用程序之间进行通信。编写和接收消息没有问题。但我无法在文本视图中显示收到的消息 为了接收传入消息,我使用了一个(工作者)线程。当我收到消息时,我会将消息发送给主线程中的处理程序,然后该处理程序会在文本视图中显示消息。 但每次处理程序试图显示消息时,我都会得到异常: “只有创建视图层次结构的原始线程才能接触其视图。” 我搜索了很多网站,包括这一个,以找到解决方案,但仍然无法解决问题。请帮帮我 代码: 您直接调用处理程序上的方法(因此在工作

我正在编写一个简单的应用程序,用于在服务器和本地网络上的应用程序之间进行通信。编写和接收消息没有问题。但我无法在文本视图中显示收到的消息

为了接收传入消息,我使用了一个(工作者)线程。当我收到消息时,我会将消息发送给主线程中的处理程序,然后该处理程序会在文本视图中显示消息。
但每次处理程序试图显示消息时,我都会得到异常:
“只有创建视图层次结构的原始线程才能接触其视图。”

我搜索了很多网站,包括这一个,以找到解决方案,但仍然无法解决问题。请帮帮我

代码:


您直接调用处理程序上的方法(因此在工作线程上),而不是推送消息

而不是:

 mHandler.handleMessage(msg);
您将需要:

 mHandler.sendMessage(msg);
参考:

而不是这个:

mHandler.handleMessage(msg);
使用以下命令:

mHandler.sendMessage(msg);

@TedHopp;-)欢迎来到stackoverflow,当你找到解决方案时,别忘了养成将你的问题标记为已回答的习惯
mHandler.sendMessage(msg);