我有一個問題需要將一個int數組傳遞給一個擴展AsyncTask的類。將int []傳遞給AsyncTask
int數組由位圖圖像的resourceId組成。
final int[] resIdImage = resId_image;
,我通過發送此向量:
execute(resIdImage);
和延伸的AsyncTask
static class BitmapWorkerTask extends AsyncTask <int[], Void, Bitmap[]>
private int[] data = new int[9];
並通過PARAMS
@Override
protected Bitmap[] doInBackground(int[] ... params) {
for (int i = 0; i < data.length; i++) {
data[i] = params[i];
}
臨危這些resourceIds的doInBackground類0
但我得到了以下錯誤的int doInBackGround法:
類型missmatch:不能從int []轉換爲int
什麼是錯我的代碼?
在此先感謝!
爲什麼使用靜態類? –
data [i] = params [i]; <--- does not像那樣 – bofredo
擴展AsyncTask的類是一個靜態的內部類。爲了避免內存泄漏,它必須是靜態的。 –