您好我正在尝试在地图上创建圆形。为此,我使用地面覆盖项目。我尝试用可绘制的xml文件绘制圆形。首先,我尝试了正常的活动布局,它向我展示了完美的圆形。同样我试图在地图上绘制它看起来像椭圆形。我的drawable和layout代码如下:
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid
android:color="#666666"/>
<size
android:width="120dp"
android:height="120dp"/>
</shape>
和我的布局文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<RelativeLayout
android:id="@+id/circleLay"
android:layout_height="100dp"
android:layout_width="100dp"
android:layout_centerInParent="true"
android:background="@drawable/circle">
</RelativeLayout>
</RelativeLayout>
我尝试按如下方式创建地面叠加项目:
LatLng NEWARK = new LatLng(0, 0);
View markerView = ((LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.custom_marker_layout, null);
GroundOverlayOptions newarkMap = new GroundOverlayOptions()
.image(BitmapDescriptorFactory.fromBitmap(createDrawableFromView(this, markerView)))
.position(NEWARK, 860000f, 650000f);
GroundOverlay imageOverlay = googleMap.addGroundOverlay(newarkMap);
同样的事情我试图显示圈子的活动,但是地图显示椭圆形状而不是圆形状。这该怎么做?需要帮忙。谢谢。
答案 0 :(得分:0)
您只需直接添加Circle,而不是使用GroundOverlay
:
Circle circle = googleMap.addCircle(new CircleOptions()
.center(new LatLng(40.740234,-74.171505))
.radius(10000)
.strokeColor(Color.GRAY)
.fillColor(Color.GRAY));