【发布时间】:2014-03-24 13:16:18
【问题描述】:
我正在使用Google Maps Android API Utility Library,并且我正在从互联网下载某些我想用作标记的图像。 我这样做的方式就像下面的sn-p:
class MarkerItemClusterRenderer extends DefaultClusterRenderer<MarkerItem> {
...
@Override
protected void onBeforeClusterItemRendered(MarkerItem item,
final MarkerOptions markerOptions) {
super.onBeforeClusterItemRendered(item, markerOptions);
mImageLoader.get(item.getImageUrl(), new ImageListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.i("XXX", error.toString());
}
@Override
public void onResponse(ImageContainer response, boolean isImmediate) {
if (response != null && response.getBitmap() != null) {
mImageIcon.setImageBitmap(response.getBitmap());
Bitmap icon = mIconGenerator.makeIcon();
Bitmap bhalfsize = Bitmap.createScaledBitmap(icon, 150,
150, false);
markerOptions.icon(BitmapDescriptorFactory
.fromBitmap(bhalfsize));
}
}
});
}
问题是,当下载图像时,地图(以及标记)不会刷新,所以大多数时候(但并非总是)我仍然会看到红色的默认标记。
我尝试过mImageIcon.invalidate(); mImageIcon.requestLayout();,但仍然没有成功。
有没有办法做到这一点? 提前非常感谢。
【问题讨论】:
标签: android google-maps google-maps-markers google-maps-android-api-2 markerclusterer