0

ハンドラー内から Toast を呼び出すことは可能ですか? もしそうなら、どのように?私の現在のコードは NullPointer Exception を生成しています。

これが私のコードです:

Handler messageHandler = new Handler() {

    public void handleMessage(Message msg) {
        super.handleMessage(msg);
        Toast toast=Toast.makeText(getApplicationContext(),"THIS IS TOAST DIALOG",Toast.LENGTH_LONG);
        toast.show();
        prgBar.setVisibility(prgBar.INVISIBLE);
       }
};

私のログレポート:

09-13 18:18:51.493: E/AndroidRuntime(1727): FATAL EXCEPTION: main

09-13 18:18:51.493: E/AndroidRuntime(1727): java.lang.NullPointerException

09-13 18:18:51.493: E/AndroidRuntime(1727): at    android.content.ContextWrapper.getApplicationContext(ContextWrapper.java:100)

09-13 18:18:51.493: E/AndroidRuntime(1727): at com.example.threadingexperiment.ThreadingExperiment$1.handleMessage(ThreadingExperiment.java:46)

行でエラーを表示:

Toast toast=Toast.makeText(getApplicationContext(),"THIS IS TOAST DIALOG",Toast.LENGTH_LONG);
4

1 に答える 1

0

Handler から ApplicationContext に到達できないと思います。

このハンドラーがあるアクティビティのコンテキストを使用する必要があります。

于 2012-09-13T13:23:03.123 に答える