我正在开发一个应用程序,其中包含谷歌地图。地图中的默认标记是可见的,但我需要从 Facebook URL 上获取图像,然后在谷歌地图上显示它。我正在使用 "universal-image-loader-sample-1.8.6.apk" 使用 URL 加载图像。
现在加载图像的方式如下:
ImageLoader imageLoader;
imageLoader = ImageLoader.getInstance();
ImageLoaderConfiguration ilc = ImageLoaderConfiguration.createDefault(this);
imageLoader.init(ilc);
ImageView imageView = (ImageView)findViewById(R.id.friend_pic);
imageLoader.displayImage(stringImageUrl, imageView);
代码很简单,displayImage() 接受两个参数,第一个是 stringImageUrl(图片的url),第二个是 imageView(布局中的 ImageView 对象)。
现在为什么我需要 ViewImage 对象来显示地图上的图片。因为 ImageLoader 对象没有从任何函数返回位图图像,所以首先我使用 ImageView 将获取的图像设置到 ImageView 中,然后再获取位图图像。
我所做的就像这样。
Drawable drawble = imageView.getDrawable();
BitmapDescriptor icon=BitmapDescriptorFactory.fromBitmap(((BitmapDrawable)drawble).getBitmap());
一旦我在BitmapDescriptor中获取了图像,将其设置到标记中就很容易了。
Marker location = googleMap.addMarker(new MarkerOptions().visible(true)
.title(stringName).position(position).icon(icon);
但问题是,它没有起作用。图像已经显示在imageView对象中,但无法将其传递到Marker。