我正在尝试将一个注释图钉图标设置到地图的中心以选择源位置。但是我找不到任何方法来设置 Android SDK 提供的注释图钉图标的锚点。
来自Android的参考方法:
startMarker.SetAnchor(p0, p1);
我正在尝试将一个注释图钉图标设置到地图的中心以选择源位置。但是我找不到任何方法来设置 Android SDK 提供的注释图钉图标的锚点。
来自Android的参考方法:
startMarker.SetAnchor(p0, p1);
MapmyIndia Map SDK 确实可以选择设置标记的锚点(注释)
marker.setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM);
完整代码:
import com.mmi.layers.Marker;
Marker marker= new Marker(mMapView);
marker.setPosition(geoPoint);
marker.setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM);
mMapView.getOverlays().add(marker);
mMapView.invalidate();
注意:标记必须有一个地理点来指出它在地图上的位置。Anchor 属性定义了标记相对于其在地图上的地理点的位置。IE。底部、顶部、中心等
如果要将标记位置固定到地图的中心,最好的方法是:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.mmi.MapmyIndiaMapView
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<View
android:id="@+id/guideline"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_centerInParent="true"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/your_pin_marker"
android:layout_above="@+id/guideline"
android:layout_centerHorizontal="true"
/>
</RelativeLayout>
如果您有 Pin/Pointer 类型的标记,您将希望指针底部指向地图的中心。这就是我使用指南视图的原因。
如果你的标记是圆形的。IE。您希望标记的中心位于地图的中心,然后只需使用图像视图并将其重力标记为中心。
现在您的标记将始终指向地图中心,以获得您可以简单地写的位置
mMapView.getMapCenter()