私はAndroidアプリを開発しています。クラスを拡張する別のクラスがThread
あります。ここでサービスを呼び出してデータをフェッチします。このスレッドがいつ完了するかを知る必要があり、完了するとToastが表示されます。「成功」のように
スレッドのようonPostExecute()
な方法はありますか?AsyncTask
ありがとう
私はAndroidアプリを開発しています。クラスを拡張する別のクラスがThread
あります。ここでサービスを呼び出してデータをフェッチします。このスレッドがいつ完了するかを知る必要があり、完了するとToastが表示されます。「成功」のように
スレッドのようonPostExecute()
な方法はありますか?AsyncTask
ありがとう
このようなスレッドを使用していることを願っています..
.....
new Thread(new Runnable() {
public void run() {
YourMetod(); //you want to execute first
finishedHandler.sendEmptyMessage(0);//when first method is executed completly you need to call this
}
}).start();
....
このようにクラスにハンドラーを作成します
private Handler finishedHandler = new Handler() {
@Override public void handleMessage(Message msg) {
//create your toast here
}
};
この希望の助けを試してください
ビューはメインスレッドからのみアクセスする必要がありますが、トーストはすべてのスレッドから表示できるため、トーストの表示はViewsコンポーネントを変更することとは異なります。そのため、スレッドを表示する必要がある場合は、Toast.makeToast(...).show()
どこにいても呼び出すだけです。
Handler
とにかく、クラスを使用して、バックグラウンド スレッドからメイン スレッドにメッセージを送信できます。
http://developer.android.com/reference/android/os/Handler.html
http://developer.android.com/guide/faq/commontasks.html#threading