MapView和AsyncTask

时间:2012-05-08 22:58:21

标签: android android-asynctask android-mapview runnable

我正在尝试使用我创建的AsyncTask类来更新MapView。问题是当我调用执行AsyncTask时出现此错误:

 "Can't create a Handler inside a thread that has not called Looper.prepare()"

我尝试使用

在UI线程上运行Task
Handler hand = new Handler(Looper.getMainLooper());
    hand.post(new Runnable() {

        public void run() {
            new RxThread().execute();


        }


    });

但这只是给了我同样的错误。我意识到我的MapView并没有调用looper准备,而且由于我在单独的活动而不是主活动上运行MapView,因此我无法解决这个问题。有没有人有这个好的解决方案?

1 个答案:

答案 0 :(得分:2)

IIRC,您的错误是因为您首先在后台线程上引用AsyncTask。您只能在主应用程序主题上创建并execute() AsyncTask