如何设置标记图标?

时间:2016-02-03 12:53:00

标签: android google-maps google-maps-api-3 google-maps-markers

我想将我的标记聚集在Android设备上的GoogleMaps地图上。因此,我尝试了this示例:

public class GoogleMapClusterItem implements ClusterItem {
public final String name;

public final int profilePhoto; // resource id

public final LatLng mPosition;

public MapClusterItem(double lat, double lng, String name, int pictureResource) {
    this.name = name;
    profilePhoto = pictureResource;
    mPosition = new LatLng(lat, lng);
}

@Override
public LatLng getPosition() {
    return mPosition;
}
}

然后我打电话给主要活动:

for (int i = 0; i < 10; i++) {
        double offset = i / 60d;
        lat = lat + offset;
        lng = lng + offset;
        MapClusterItem offsetItem = new MapClusterItem(lat, lng, "Casa Mia", R.drawable.ic_casa);

        mClusterManager.addItem(offsetItem);
    }

我想用单独的png图片替换标记图标。但总有红色的标准标记符号。

我应该在哪里调用drawMarker方法?

如您所见,这些不是标记对象。

1 个答案:

答案 0 :(得分:2)

    private void drawMarker(LatLng point, int drawable)
    {
       MarkerOptions markerOptions = new MarkerOptions();
       markerOptions.icon(BitmapDescriptorFactory.fromResource(drawable));
       markerOptions.position(point);
       googleMap.addMarker(markerOptions);
    }

您可以使用上述方法绘制标记,其中param drawable是可绘制资源ID(图像),而point是LatLng,其中必须绘制标记。