Android 异步任务数据获取程序

Android 异步任务数据获取程序,android,android-asynctask,Android,Android Asynctask,我有一个类扩展了Asynctask。在这个类中,我有一个返回哈希映射的方法。如何在扩展活动的不同类中获取此Hashmap 有人给我一些参考代码吗?您可以在活动中创建一个侦听器,然后将此侦听器传递到您的任务中。AsyncTask完成后,可以调用侦听器来设置Hashmap。因此,在异步任务中创建侦听器: public static interface MyListener { void setHashmap(Hashmap myHashmap); } pub

我有一个类扩展了Asynctask。在这个类中,我有一个返回哈希映射的方法。如何在扩展活动的不同类中获取此Hashmap


有人给我一些参考代码吗?

您可以在活动中创建一个侦听器,然后将此侦听器传递到您的任务中。AsyncTask完成后,可以调用侦听器来设置Hashmap。因此,在异步任务中创建侦听器:

    public static interface MyListener {
        void setHashmap(Hashmap myHashmap);
    }
    public void setListener(MyListener listener) {
        this.listener = listener;
    }
    public class MyActivity extends Activity implements MyListener { ...


    public void setHashmap(Hashmap hashmap) {

        // do stuff here
        this.hash = hashmap
    }
此外,还有一个设置侦听器的功能:

    public static interface MyListener {
        void setHashmap(Hashmap myHashmap);
    }
    public void setListener(MyListener listener) {
        this.listener = listener;
    }
    public class MyActivity extends Activity implements MyListener { ...


    public void setHashmap(Hashmap hashmap) {

        // do stuff here
        this.hash = hashmap
    }
然后在onPostExecute中调用侦听器上的函数

    listener.setHashmap(myHashmap);
在活动中实现此侦听器:

    public static interface MyListener {
        void setHashmap(Hashmap myHashmap);
    }
    public void setListener(MyListener listener) {
        this.listener = listener;
    }
    public class MyActivity extends Activity implements MyListener { ...


    public void setHashmap(Hashmap hashmap) {

        // do stuff here
        this.hash = hashmap
    }
最后设置侦听器并启动异步任务:

    AsyncTask task = new MyAsyncTask();
    task.setListener(this);
    task.execute();

当然,您也可以将AsyncTask放在活动中,然后在onPostExecute中设置hashmap。

您可以在活动中创建一个侦听器,然后将此侦听器传递到AsyncTask中。AsyncTask完成后,可以调用侦听器来设置Hashmap。因此,在异步任务中创建侦听器:

    public static interface MyListener {
        void setHashmap(Hashmap myHashmap);
    }
    public void setListener(MyListener listener) {
        this.listener = listener;
    }
    public class MyActivity extends Activity implements MyListener { ...


    public void setHashmap(Hashmap hashmap) {

        // do stuff here
        this.hash = hashmap
    }
此外,还有一个设置侦听器的功能:

    public static interface MyListener {
        void setHashmap(Hashmap myHashmap);
    }
    public void setListener(MyListener listener) {
        this.listener = listener;
    }
    public class MyActivity extends Activity implements MyListener { ...


    public void setHashmap(Hashmap hashmap) {

        // do stuff here
        this.hash = hashmap
    }
然后在onPostExecute中调用侦听器上的函数

    listener.setHashmap(myHashmap);
在活动中实现此侦听器:

    public static interface MyListener {
        void setHashmap(Hashmap myHashmap);
    }
    public void setListener(MyListener listener) {
        this.listener = listener;
    }
    public class MyActivity extends Activity implements MyListener { ...


    public void setHashmap(Hashmap hashmap) {

        // do stuff here
        this.hash = hashmap
    }
最后设置侦听器并启动异步任务:

    AsyncTask task = new MyAsyncTask();
    task.setListener(this);
    task.execute();
当然,您也可以将AsyncTask放在活动中,然后在onPostExecute中设置hashmap