我正在使用 nostra13 UniversalImageLoader 将一堆图像加载到 gridview 中并且它工作得很好,但是当用户单击菜单上的一个项目时,我需要更改图像(不是打开一个新页面,而是重新加载/刷新同一页上的图像)
我这样调用图像加载器:
protected ImageLoader imageLoader;
imageLoader = ImageLoader.getInstance();
imageLoader.init(ImageLoaderConfiguration.createDefault(this));
Bundle bundle = getIntent().getExtras();
imageUrls = bundle.getStringArray(Extra.IMAGES);
options = new DisplayImageOptions.Builder()
.showStubImage(R.drawable.stub_image)
.showImageForEmptyUri(R.drawable.image_for_empty_url)
.cacheInMemory()
.cacheOnDisc()
.bitmapConfig(Bitmap.Config.RGB_565)
.build();
final GridView main_gridview = (GridView)findViewById(R.id.main_gridview);
main_gridview.setAdapter(new ImageAdapter());
public class ImageAdapter extends BaseAdapter {
@Override
public int getCount() {
return imageUrls.length;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final ImageView imageView;
if (convertView == null) {
imageView = (ImageView) getLayoutInflater().inflate(R.layout.item_grid_image, parent, false);
} else {
imageView = (ImageView) convertView;
}
imageLoader.displayImage(imageUrls[position], imageView, options);
return imageView;
}
}
如您所见,Extras.IMAGES 是包含各种 URL 的字符串数组,因此当用户单击菜单上的所述按钮时,我有包含新 URLS 的数组,但不确定如何“刷新”图像适配器?
我知道您可以即时将图片“添加”到 gridview,但是如果您可以完全刷新整个数组,我没有在 nostra 的文档中看到。
任何帮助是极大的赞赏。:)
PS。抱歉,如果这个问题的答案很明显,我只进入 android dev 一周左右。