1

ファイルをAsyncTaskに渡すことは可能ですか?このような?

public class UploadImagesTask extends AsyncTask<String, String, File> {
    @Override
    protected File doInBackground(String... params) {

これを行うことでそのファイルにアクセスしますか?

params[2]
4

1 に答える 1

7

そうじゃない、いや。

Stringaとaを渡したい場合はFile、このようなことを行う必要があります。引数を台無しにしないように自分を信頼してください。

public class DoThing extends AsyncTask<Object, String, File> {
    @Override
    protected File doInBackground(Object... params) {
        String stringy = (String) params[0];
        File file = (File) params[1];
        // do hard work
        return file;
    }
}

すべての引数が拡張Objectされるため、Thingを呼び出すと、次のようになります。

String aString = stringGettingMethod();
File aFile = fileGettingMethod();
new DoThing().execute(aString, aFile);

または、コンストラクター引数を使用して、必要なものを渡すことができます。

于 2012-11-21T01:12:08.253 に答える