poc*_*men 5 java android google-maps
我在使用谷歌地图v2绘制圆圈时遇到问题.圆形显示正确,但圆的边缘不平滑,它们非常清晰,有没有办法将Antialising应用于形状?谢谢
我的代码:
CircleOptions circleOptions = new CircleOptions()
.center(point)
.radius(500)
.fillColor(0x7F0000FF)
.strokeColor(Color.rgb(71, 143, 150))
.strokeWidth(2);
Run Code Online (Sandbox Code Playgroud)
小智 0
我知道这是一个老问题,我没有完全回答它,但无论如何,这是我的贡献:
到目前为止,我相信 Android 中还没有办法做到这一点。唯一的解决方法是使用 Google 地图标记并将其图标替换为平滑圆圈的位图。您将无法更改它的大小,但我认为这几乎是不使用 Circle 对象的唯一限制。
为了让事情变得更简单,您甚至可以使用 Android Studio 创建新的图像资源,选择剪贴画,然后搜索“亮度”。第一个图标将是一个完美的圆形,然后您可以根据自己的喜好更改其大小和颜色。然后,只需从新创建的可绘制对象中创建一个新的位图:
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.DRAWABLE_NAME_HERE);
Run Code Online (Sandbox Code Playgroud)
并创建一个 BitmapDescriptor,用于为 Google 地图标记提供其图标:
BitmapDescriptor descriptor = BitmapDescriptorFactory.fromBitmap(bitmap);
Run Code Online (Sandbox Code Playgroud)
定义了这个对象后,您只需将其设置为标记的图标:
Marker.setIcon(descriptor);
Run Code Online (Sandbox Code Playgroud)
或者
MarkerOptions.icon(descriptor);
Run Code Online (Sandbox Code Playgroud)
并使用这些MarkerOptions创建一个新的Marker。
正如我所说,这不是您问题的完整答案,但这是我所知道的最接近的答案。希望它能有所帮助。