【问题标题】:Add marker infoWindow to Mapbox annotation将标记 infoWindow 添加到 Mapbox 注释
【发布时间】:2016-07-31 13:40:53
【问题描述】:

我尝试将自定义 UIView 添加为我的 MGLAnnotation 的信息窗口,但我不明白该怎么做。

我已经尝试了好几天,但最接近成功的方法是将我的自定义 UIView 添加为 InfoWindow 但非常小(我认为它的宽度为 500 像素,高度为 100 像素)。

如何获取完整大小的 UIView 并将其作为 infoWindow 添加到注释中?

谢谢!

【问题讨论】:

  • 由于MGLAnnotation 没有infoWindow 属性,因此不清楚您在问什么。你能澄清一下你想要做什么吗?
  • 如果您指的是标注视图,请参见此示例:mapbox.com/ios-sdk/examples/custom-callout
  • @TomHarrington 是的,我想替换单击自定义 UIView 的注释时显示的基本视图,现在更清楚了吗?
  • @friedbunny 我试图理解该指南,但经过数小时的尝试,我无法理解如何将自定义 UIView 连接为标注。你能帮我举个例子吗?我会很感激的。
  • 自定义标注视图 API 比它需要的更复杂,但也不清楚您的问题是什么。如果其他人要帮助你,你应该更具体地说明:1. 你想要完成什么,2. 你遇到了什么问题,3. 你已经尝试过什么。

标签: ios iphone swift cocoa-touch mapbox


【解决方案1】:

请参阅此示例:https://www.mapbox.com/ios-sdk/examples/custom-callout/

具体看-[MGLMapViewDelegate mapView:calloutViewForAnnotation:]的实现。

如果你从 XIB 加载它,你将不得不做额外的工作来初始化视图,但概念是一样的。

【讨论】:

  • 我已经复制粘贴了本指南中的整个代码,但是当我尝试将 mainBody 替换为 Self 自定义视图时,单击注释时未显示标注
  • 我已经成功加载视图(我创建了另一个“ControllerView”并将我的自定义视图设置为mainBody),但现在框架真的很奇怪(整个屏幕)而且我不明白如何将其设置为正确的大小
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-23
  • 1970-01-01
  • 1970-01-01
  • 2018-07-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多