在主Activity中,实例化了一个Handler,启动一个新的线程去执行一些逻辑,执行完逻辑后,希望能讲一个结果返回给主Activity,不知道如何做了,希望大家能帮忙,写出一个大概示例代码。谢谢。

解决方案 »

  1.   

    //将Handler传递给线程,
    myThread tt=new myThread(handler);
    tt.start();//线程执行完后
    Message msg=new Message();
    msg.what=数据 msg.arg1=数据 等等
    //线程接受的handler传递消息给主Activity
    handler.sendMessage(msg);
      

  2.   

    楼主,多线程之间是执行不是顺序的关系。在主线程中创建了新线程后,两个线程之间是并发执行的,不是顺序执行。就是两个线程都在继续执行各自的代码。如果你想给主线程一个结果的,可以通过broastcast实现,发个广播,在主线程中接受下就好了。
      

  3.   

    按照楼上说的,线程之间并行的话。我现在的需求是这样,您看如何实现好activity里去请求一个服务端,获取数据,返回数据后,将数据(xml)解析,然后把内容显示在activity上如果都放在activity中做的话,会造成屏幕无响应等,影响体验。
      

  4.   

    用这个AsyncTask<String, String, String> 去处理获取数据,返回数据后,将数据(xml)解析,具体用法google一下例子很多的
      

  5.   

    通过broastcast实现,把解析好的数据结构放到intent里面
      

  6.   

    AsyncTask 说的太宽泛了 任务调度那么简单吗