Lấy bitmap từ một url image cho android

Ai biết lấy bitmap từ một url ảnh cho android không, chỉ mình với,
mình dùng imageloader của volley:

  • chưa có cache: thì nó toàn trả kết quả sau vòng for (khi chạy hết for rồi nó mới trả kết quả). mà mình muốn get cái bitmap đó ngay trực tiếp của cái i đó luôn.
  • có cache: Thi chạy đúng

cảm ơn mọi người.

show code đi bạn, ngữ cảnh làm khác nhau, cũng khó chia sẻ.

1 Like

bạn biết cách nào get bitmap nữa không chỉ mình với

Dùng Picasso cho nhanh: http://square.github.io/picasso

Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
3 Likes

url bạn truyền vào là gì mình không biết, thôi đưa ra các hàm bạn tham khảo

từ 1 link :

 public static Bitmap getBitmapFromURL(String src) {
    try {
        URL url = new URL(src);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setDoInput(true);
        connection.connect();
        InputStream input = connection.getInputStream();
        Bitmap myBitmap = BitmapFactory.decodeStream(input);
        return myBitmap;
    } catch (IOException e) {
        e.printStackTrace();
        return null;
    }
}

từ một url scard trong máy :

Bitmap getPreview(URI uri) {
    File image = new File(uri);

    BitmapFactory.Options bounds = new BitmapFactory.Options();
    bounds.inJustDecodeBounds = true;
    BitmapFactory.decodeFile(image.getPath(), bounds);
    if ((bounds.outWidth == -1) || (bounds.outHeight == -1))
        return null;

    int originalSize = (bounds.outHeight > bounds.outWidth) ? bounds.outHeight
            : bounds.outWidth;

    BitmapFactory.Options opts = new BitmapFactory.Options();
    opts.inSampleSize = originalSize / THUMBNAIL_SIZE;
    return BitmapFactory.decodeFile(image.getPath(), opts);     
}
1 Like

cảm ơn bạn :smiley:

Cảm ơn bạn. để tí thử xem.

doi xiu minh viet demo cho ban xem :smiley:


ban hien !

1 Like

cái này bỏ vào for loop khi chạy nó vẫn bỏ qua callback bác à
nó chạy onPrepareLoad xong nó ra khỏi callback luôn
chứ nó không chạy onBitmapLoaded

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?