【发布时间】:2023-04-04 00:56:01
【问题描述】:
在你投反对票之前,让我说我已经在不同的论坛上搜索了至少 5 个小时的解决方案/黑客,这些是我迄今为止尝试过的解决方案:
- 调用
showInfoWindow()强制Marker来到前面 - 向地图添加标记的顺序
- 可绘制标记的大小
我知道MarkerOptions/Markers 中没有 Z 轴值。
问题:订购标记是否有任何技巧/窍门? (即使我们用可点击的 Overlays 来改变 Markers 等等......)
感谢您的帮助。
编辑: 一个例子是:
//Marker B
MarkerOptions mBOptions = objB.getMarkerOptions();
//mBOptions has Pos = (1/0) and Icon has a radius 1
Marker markerA = mGoogleMap.addMarker(mBOptions);
//Marker A
MarkerOptions mAOptions = objA.getMarkerOptions();
//mAOptions has Pos = (0/0) and Icon has a radius 10
Marker markerB = mGoogleMap.addMarker(mAOptions);
无论我如何更改标记 A 的位置,我都想强制 A 覆盖标记 B。我不希望标记 B 显示在 A 之上。
【问题讨论】:
-
“订购标记”是什么意思?你想把它们放在不同的位置吗?
-
我的“z-ordering”的意思是标记如何绘制在另一个之上的方式?我知道谷歌从上到下呈现标记。示例:带有大图标的标记(我们称之为 A)应该(部分)覆盖另一个较小的标记(B),如果 A 的图标覆盖了 B 的位置。我的问题是大部分 B 被绘制在 A 的顶部并且我完全无法控制。
-
你能把你的代码贴在这里吗?
-
请参阅编辑 1。
-
我发现了一个可以部分解决它的技巧。如果两个标记位于同一位置,如果将纬度减少 0.0001,则该标记将出现在顶部。如果标记的位置应该完全相同,这可以在线工作。
标签: java android google-maps marker