在 Android Google 地图中将地图标记置于前面

发布于 2024-12-02 20:58:37 字数 263 浏览 0 评论 0原文

我有一个 Android 应用程序,可以在 Google 地图上显示多个标记(使用 Google Android API)。当多个标记相互重叠时,我希望用户点击的标记被带到前面(想想 zIndex),但我还没有找到一种在 Android 中执行此操作的方法。

有没有一种简单的方法可以强制将选定的标记带到地图的前面?或者我是否需要仅使用单个选定的标记创建一个新的叠加层,并将其放置在具有所有其他标记的叠加层之上?

或者我是否需要对列表中的叠加层重新排序,然后强制重新绘制所有标记?

I have an Android app that displays multiple markers on a Google Map (using the Google Android APIs). When multiple markers overlap each other, I want the one a user clicks on to be brought to the front (think zIndex) but I haven't found a way to do this in Android.

Is there a simple way to force a selected marker to be brought to the front of the map? Or do I need to create a new overlay with just the single selected marker and place it on top of the overlay that has all the other markers?

Or do I need to reorder the overlays in my list and then force a redraw of all the markers?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小霸王臭丫头 2024-12-09 20:58:37

我认为 Google 地图中的 zIndex 只是通过按照 文档

要实现您的功能,请创建一个仅包含单击的项目的新的单个叠加层。基本上,您只需从原始叠加层移至此叠加层即可。

步骤:

  • 最初为用户单击的项目创建空叠加层。让我们将此称为 ClickedOverlay 并将其放在顶部
  • 当用户单击特定的叠加层时,从原始叠加层移动到 ClickedOverlay
  • 使用此方法,您不会为用户单击的每个标记创建带有单个项目的叠加层,而您没有更改叠加的顺序。

zIndex in Google Map I think is simply done by the ordering of the overlays per the documentation.

To achieve your functionality, create a new single overlay containing only the clicked item. Basically you will just move from the original overlay to this one.

Steps:

  • Create empty overlay initially for the item that the users click. Let's call this one ClickedOverlay and put this one on top
  • As the user click a particular overlay, move from the original to ClickedOverlay
  • Using this method, you are not creating overlay with single item for every marker that the user click and you don't have to change the order of the overlay.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文