如何将包含url作为图像源的数组传递给网格视图的imageadapter? 我有一个工作的图像适配器。但问题是适配器的getView方法只返回一个imageview。有人可以告诉如何将包含url的数组传递给gridview的图像适配器吗? getview方法在这里
public View getView(final int position, View convertView, ViewGroup parent) {
ImageView imageView = null;
if (convertView == null) { // if it's not recycled, initialise some attributes
imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8,8,8,8);
} else {
imageView = (ImageView) convertView;
}
// Bitmap bmp = loadBitmap(url[i]);
Bitmap bmp = loadBitmap("http://www.fgj.com/aero/planes/boeing/boeingf15.jpg");
System.out.println("in adapter :" + url[i]);
imageView.setImageBitmap(bmp);
//imageView.setImageResource(mThumbIds[position]);
//Bitmap bmp = loadBitmap("http://www.fgj.com/aero/planes/boeing/boeingf15.jpg");
return imageView;
}
答案 0 :(得分:1)
ArrayList<String> list;//list of image paths
public View getView(int position, View convertView, ViewGroup parent)
{
ImageView imageView;
if (convertView == null) {
imageView = new ImageView(context);
imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(5, 5, 5, 5);
} else {
imageView = (ImageView) convertView;
}
Bitmap myBitmap = BitmapFactory.decodeFile("/sdcard/foldername/"+list.get(position));
imageView.setImageBitmap(myBitmap);
imageView.setBackgroundColor(-1);
return imageView;
}
答案 1 :(得分:0)
不幸的是,很多比它需要的更难。您需要做的概述是:
AdapterView
中的哪个位置,以便您可以在图像进入时有选择地使行无效。我个人认为该框架应该提供一个“WebImage”小部件,这将使这更容易一些。我想有太多的移动部件,每个应用程序自己实现它是有意义的。
修改 - ,除非您使用图书馆并让其他人做脏工作。显然DroidFu有解决此问题的方法:ImageLoader。我没有使用它,但它可能不像滚动自己那样容易出错。