何も渡していない場合、AsyncTaskをインスタンス化して呼び出し、クラスを拡張するにはどうすればいいですか?AndroidのAsyncTaskに何も渡さない
また、UIのテキストビューを計算結果に設定しています。
おかげで、 ベン
何も渡していない場合、AsyncTaskをインスタンス化して呼び出し、クラスを拡張するにはどうすればいいですか?AndroidのAsyncTaskに何も渡さない
また、UIのテキストビューを計算結果に設定しています。
おかげで、 ベン
私はあなたが私はすべてのパラメータを要求しませんAsyncTaskを書くのですかだっ依頼するどのような意味だと思います。そのトリックは、クラスの拡張でパラメータと戻り値として使用するものを定義することです:例えば class MyClass extends AsyncTask<Void, Void, Void>
はパラメータを期待せず、どちらも返しません。 AsyncTask<String, Void, Drawable>
文字列(または複数の文字列)を期待しonPostExecute結果にparamsは、結果ビットマップなし(独自onPostExecute
方法独自doInBackground
方法から)非同期ため
例の実装を描画領域を返し
/**
* My Async Implementation without doInBackground params
*
*/
private class MyAsyncTask extends AsyncTask<Void, Void, Bitmap> {
@Override
protected Bitmap doInBackground(Void... params) {
Bitmap bitmap;
....
return bitmap;
}
protected void onPostExecute(Bitmap bitmap) {
....
}
}
でこの実装を追加する必要があります:
MyAsyncTask myAsyncTask = new MyAsyncTask();
myAsyncTask.execute();
myAsyncTask.execute、isn 'パラメータを供給する必要がありますか? –
はい。その場合、関数はパラメータなしで実行できます。さらに詳しい情報が必要な場合は、私に連絡してください。 –
とあなたに連絡する最も良い方法は何ですか:) –
ありがとう、それは非常に便利です。構築したカスタムビューにテキストを設定する必要があります(パラメータが設定されていないか返されていません)。どうすればいいですか? –
ビューへの参照を渡すAsyncTaskクラスでコンストラクターを作成できます。これをクラスの変数に保存すると、その変数を使用して 'onPostExecute'メソッドでテキストを設定できます。あなたは 'onPostExecute'でそれを行う場合を除いて、アンドゥスレッド(あなたのAsyncTask)でUIを変更することを許可していないので、' onPostExecute'にテキストを設定してください。 – Lars