gpt4 book ai didi

android - 在 Android Google Maps API v2 中实现覆盖的建议方法是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:40:58 26 4
gpt4 key购买 nike

在原始版本的 Android Google Maps API 中,使用以下代码很容易实现覆盖:

List<Overlay> mapOverlays = mapView.getOverlays();
AlarmOverlay alarmOverlay = new AlarmOverlay();
mapOverlays.add(alarmOverlay);

...然后可以覆盖覆盖层的 draw() 方法并绘制矢量图形,覆盖覆盖层的 onTouchEvent() 方法并提供自定义控件等。

我不知道如何在 v2 中构建类似的自定义控件,因为 API 引用中没有提到覆盖的用例(标记和多边形还不够)。有人有建议的 v2 实现方式吗?

最佳答案

如果您需要将自己的图像放置在地球表面上,请使用 GroundOverlay。方法addGroundOverlay添加这样的图像。需要 GroundOverlayOptions允许指定图像大小和位置(在经纬度方面)以及 BitmapDescriptor在其他选项中,可以使用普通的 Bitmap作为图像源。所以你可以创建一个新的位图,创建Canvas围绕这个位图并在那里绘制。

如果您需要绘制非常复杂的东西,这似乎是一个很好的方法,对于那些多边形和标记是不够的东西。此外,在 Canvas 上绘制的旧代码可能可以重复使用。

我还没有做足够的测试,我们更新位图后 map 将在多长时间内更新。在最坏的情况下,地面覆盖层可能需要 removed并添加了新的地面叠加层。位图本身可能仍然可以重复使用。

在顶部放置额外的组件可能会有问题,因为它必须支持缩放、四处移动并且 map 现在甚至是 3D。

关于android - 在 Android Google Maps API v2 中实现覆盖的建议方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14105531/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com