Android 将图像加载到 GridView 中

Android load Images into a GridView

我想把本地图片加载到一个GridView中。

我的适配器中的代码是

public View getView(int position, View convertView, ViewGroup parent) {
    ImageView imageView;
    if (convertView == null) {
        // if it's not recycled, initialize some attributes
        imageView = new ImageView(context);
        //imageView.setLayoutParams(new GridView.LayoutParams(85, 85));


        imageView.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));

        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        imageView.setPadding(8, 8, 8, 8);
    } else {
        imageView = (ImageView) convertView;
    }


    Bitmap btmp = BitmapFactory.decodeFile(images.get(position).getAbsolutePath());

    BitmapImage img = new BitmapImage(btmp);
    btmp = ThumbnailUtils.extractThumbnail(btmp, 128,128);

    imageView.setImageBitmap(btmp);
    return imageView;
}

现在我的问题是加载我的应用程序需要很长时间(几秒钟)。而且滚动也很卡。

有没有快速创建图片概览缩略图的方法?

或者有没有办法让网格单元并行加载? 或者只显示一张空白图片并在加载缩略图后替换它?

使用 Picasso 库 http://square.github.io/picasso/

Picasso.with(上下文)
.load(R.drawable.your_image)
.placeholder(R.drawable.icon_waitong)
.error(R.drawable.icon_error)
.into(imageView);