我只想在选择地图标记时更改它的图标。
我在Fragment类中实现了GoogleMap.OnMarkerClickListener类。
public class MapFragment extends SupportMapFragment implements GoogleMap.OnMarkerClickListener{
....
@Override
public boolean onMarkerClick(Marker marker) {
marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.placemarker_pressed));
return false;
}
}
单击时更改标记图标。取消选择后如何将其设置回原始图标?
还实现GoogleMap.OnMapClickListener接口并创建一个私有变量来存储当前选定的标记:
private Marker mSelectedMarker;
然后:
@Override
public boolean onMarkerClick(Marker marker) {
if (null != mSelectedMarker) {
mSelectedMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.placemarker));
}
mSelectedMarker = marker;
mSelectedMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.placemarker_pressed));
return false;
}
@Override
public boolean onMapClick(LatLng latLng) {
if(null != mSelectedMarker) {
mSelectedMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.placemarker));
}
mSelectedMarker = null;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句