我想在Android中的MapView中绘制一个始终居中的图像叠加层,就像目标十字线
一样我要接近它的方法是使用Overlay的onTouchEvent和 MotionEvent.Move移动叠加层的位置。
有更好的方法吗?
答案 0 :(得分:4)
您应该能够使用包含MapView和ImageView的RelativeLayout来实现这一目标。这是一些示例XML:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.maps.MapView android:id="@+id/google_maps"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="@string/maps_key"/>
<ImageView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/mapcenter"/>
</RelativeLayout>
这将使您的图像居中,并减少中心/保持图像居中所需的任何处理。当然还有其他方法可以使用OverlayItem,如果XML方法不起作用,请告诉我,我将发布一个叠加示例。