Android 需要简单的消息示例,从AsyncTask到UI线程,不使用服务
我正在寻找在异步任务中设置消息并在UI线程的处理程序中处理消息的简单示例代码 我所看到的例子都是在一个服务中处理的,我的应用程序目前没有使用任何服务。在没有服务的情况下是否可以使用消息 示例代码将不胜感激Android 需要简单的消息示例,从AsyncTask到UI线程,不使用服务,android,Android,我正在寻找在异步任务中设置消息并在UI线程的处理程序中处理消息的简单示例代码 我所看到的例子都是在一个服务中处理的,我的应用程序目前没有使用任何服务。在没有服务的情况下是否可以使用消息 示例代码将不胜感激 public static final int MSG=1; public static final int MSG = 1; private final Handler handler = new Handler(){ @Override public void handle
public static final int MSG=1;
public static final int MSG = 1;
private final Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
switch( msg.what ){
case MSG:{
}break;
}
}
};
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
new YourAST(handler).execute();
}
public class YourAST extends AsyncTask<String, Void, Integer> {
Handler mHandler = null;
public YourAST(Handler handler){
this.mHandler = handler;
}
@Override
protected Integer doInBackground(String... arg) {
// send message to UIthread
if(mHandler!=null)
mHandler.sendEmptyMessage(YourClass.MSG);
return null;
}
}
私有最终处理程序=新处理程序(){
@凌驾
公共无效handleMessage(消息消息消息){
开关(msg.what){
案例消息:{
}中断;
}
}
};
@凌驾
创建公共空间(捆绑冰柱){
超级冰柱;
新建YourAST(handler.execute();
}
公共类YourAST扩展异步任务{
Handler mHandler=null;
公共YourAST(处理程序){
this.mHandler=handler;
}
@凌驾
受保护的整数doInBackground(字符串…arg){
//向UIthread发送消息
if(mHandler!=null)
mHandler.sendEmptyMessage(YourClass.MSG);
返回null;
}
}
感谢您快速回复您的答案。评估您的答案后,我意识到我问错了。我真正需要做的是能够从另一个线程内部向UI发送消息。另一个线程将运行,因为我在另一个线程中收到了一个未经请求的UDP数据包,我需要将一些接收到的数据发送到UI。您能否提供示例代码,说明如何将消息从另一个线程发送到UI?您希望以完全相同的方式执行此操作。将处理程序放在UI线程中,在w/e类中包含第二个线程,让它有一个setHandler()线程,当初始化UI时,让它将处理程序传递给该类。在该类中,有一个sender函数,用于检查处理程序是否为null,如果其不为null(UI是可见的),则发送消息。如果你需要一个详细的例子,请告诉我。再次感谢你的反馈。这很有帮助!我现在已经启动并运行了。