将URL中的图像添加到InfoWindowAdapter中

时间:2015-01-06 19:00:10

标签: android google-maps-api-3 android-volley image-load

我试图在InfoWindowAdapter中显示来自网址的图片,但它没有显示图片。我使用Volley加载图片。

有谁知道如何解决这个问题?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。有必要手动下载图像。代码如何:

private void loadImage(Marker marker) {
if (((BitmapDrawable) localImage
        .getDrawable()) == null) {
    new DownloadImage(localImage, marker).execute(urlImage);
}
private class DownloadImage extends AsyncTask<String, Void, Bitmap> {

private ImageView icone;
private Marker marker;

public DownloadImage(ImageView imageView, Marker marker) {
    icone = imageView;
    this.marker = marker;
}

@Override
protected Bitmap doInBackground(String... URL) {

    String imageURL = URL[0];
    Bitmap bitmap = null;
    try {
        // Download Image from URL
        InputStream input = new java.net.URL(imageURL).openStream();
        bitmap = BitmapFactory.decodeStream(input);

    } catch (Exception e) {
        e.printStackTrace();
    }
    return bitmap;
}

@Override
protected void onPostExecute(Bitmap result) {
    if (result != null) {
        icone.setImageBitmap(result);
    } else {
        icone.setBackgroundResource(R.drawable.ic_launcher);
    }
    marker.showInfoWindow();
}

}