我使用 Asynctask 来下载图片,这是从自定义适配器的 getview 方法执行的。此自定义适配器设置为列表视图,但列表视图中不显示任何内容。我想在单击主要活动的进度条时显示列表视图可能是什么问题?请任何人都可以帮助我。我的代码是这样的:@Override public View getView(int position, View convertView, ViewGroup parent) {
inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
if (convertView == null){
convertView = inflater.inflate(R.layout.show_image, null);
imageview = (ImageView) convertView.findViewById(R.id.imageview);
convertView.setTag(imageview);
new DownloadTask().execute(images.get(position), imageview);
}
return convertView;
}
}
private class DownloadTask extends AsyncTask<Object, Integer, Bitmap>{
ImageView iv;
@Override
protected Bitmap doInBackground(Object... params) {
String url = (String) params[0];
iv = (ImageView) params[1];
Bitmap bmap = null;
try {
bmap = getBitmap(url);
} catch (IOException e) {
e.printStackTrace();
}
return bmap;
}
public Bitmap getBitmap(String urlstring) throws IOException{
URL _url = new URL(urlstring);
HttpURLConnection connection = (HttpURLConnection) _url.openConnection();
InputStream stream = connection.getInputStream();
Bitmap bitmap = BitmapFactory.decodeStream(stream);
return bitmap;
}
@Override
protected void onPostExecute(Bitmap result) {
super.onPostExecute(result);
iv.setImageBitmap(result);
}
progress.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
progress.setVisibility(progress.GONE);
adapter = new ImageAdapter(getApplicationContext(), R.layout.show_image,imagenames);
listview.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
});