我想使用自定义群集图标,所以我查看了android-maps-util演示并根据我的需要进行了调整。 首先,我在multi_profile.xml模型上有一个集群图标的布局。在括号中,我不明白textView实用程序是什么......如果你有答案......
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageCluster"
android:src="@drawable/icon_guide_144_tr" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:id="@+id/textView"
android:layout_gravity="center" />
</FrameLayout>
这是我的自定义群集渲染器:
private class SiteMarkerRenderer extends DefaultClusterRenderer<SiteMarker> {
private final IconGenerator mClusterIconGenerator = new IconGenerator(getActivity());
public SiteMarkerRenderer() {
super(getActivity(), mMap, mClusterManager);
View multiProfile = getActivity().getLayoutInflater().inflate(R.layout.cluster_icon, null);
mClusterIconGenerator.setContentView(multiProfile);
}
@Override
protected boolean shouldRenderAsCluster(Cluster cluster) {
return cluster.getSize() > 5; // if markers <=5 then not clustering
}
@Override
protected void onBeforeClusterItemRendered(SiteMarker item, MarkerOptions markerOptions) {
markerOptions.icon(item.getMarker().getIcon()).title(item.getMarker().getTitle());
markerOptions.icon(item.getMarker().getIcon()).snippet(item.getMarker().getSnippet());
}
@Override
protected void onBeforeClusterRendered(Cluster<SiteMarker> cluster, MarkerOptions markerOptions) {
Bitmap icon = mClusterIconGenerator.makeIcon(String.valueOf(cluster.getSize()));
markerOptions.icon(BitmapDescriptorFactory.fromBitmap(icon));
}
}
那么你能告诉我为什么markerOptions.icon()似乎没有显示任何内容吗?
答案 0 :(得分:0)
事实上,GMaps API V3无法混合自定义群集的图标和默认群集的图标,以显示群集的标记数量。