1

MapViewを更新するために作成したAsyncTaskクラスを使用しようとしています。問題は、AsyncTaskを実行するための呼び出しを行うときにこのエラーが発生することです。

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

を使用してUIスレッドでタスクを実行してみました

Handler hand = new Handler(Looper.getMainLooper());
    hand.post(new Runnable() {

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


        }


    });

しかし、それは私に同じエラーを与えるだけです。MapViewがlooperprepareを呼び出さないこと、およびメインアクティビティではなく別のアクティビティでMapViewを実行しているため、これを機能させるのに問題があることに気付きました。誰かがこれに対する良い解決策を持っていますか?

4

1 に答える 1

2

IIRC、あなたのエラーは、最初AsyncTaskにバックグラウンド スレッドを参照しているためです。execute()およびはAsyncTask、メイン アプリケーション スレッドでのみ作成できます。

于 2012-05-08T23:02:27.663 に答える