ios - 单击 gmsmarker 时不会弹出信息窗口

标签 ios objective-c google-maps google-maps-api-3 google-maps-markers

我完全不确定发生了什么 - 这才刚刚开始发生。当我单击 map 上的标记时,会弹出带有标记标题的信息窗口。我添加了委托(delegate)方法来检测何时单击标记:

- (BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker*)marker { NSLog(@"Description: %@", [marker description]); return YES; }

日志的输出是:

Description: <GMSMarker: 0x170150750> xxxxxusernamexxxxx (42.246932, -71.175118), <UIImage: 0x170486ea0> size {40, 53.5} orientation 0 scale 2.000000

信息窗口没有弹出。正在注册我正在点击标记,但我真的不知道为什么它不再像以前那样继续打开信息窗口。我猜它与标记相关的数据有关。

对于初学者 - 当我点击信息窗口时,应用程序会转到我的后端并检索图片。我在上面看到,<UIImage: 0x170486ea0> size {40, 53.5} orientation 0 scale 2.000000 - 图像在被检索之前是否应该与标记相关联?在我单击应该弹出的信息窗口之前,检索它的代码不会运行...所以它就在那里似乎还为时过早。

有人知道这可能发生的任何原因吗?谢谢。

最佳答案

您需要返回 NO,而不是 YES。我知道这违反直觉,它不是在寻找“继续”。

来自文档:

如果此委托(delegate)处理了点击事件,这会阻止 map 执行其默认选择行为,则为"is";如果 map 应继续其默认选择行为,则为“否”。

关于ios - 单击 gmsmarker 时不会弹出信息窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40290236/

相关文章:

ios - 需要有关 transitionFromView :toView:duration:options:completion: 的帮助

ios - 如何使用 xmppframework 创建一个新的聊天组?

ios - 显示键盘时获取当前文本字段

html - 如何让下拉菜单显示在谷歌地图上?

javascript - 如何禁用谷歌地图 v3 中的默认信息窗口

iOS:集成PayPal SDK购买元素

ios - 如何合并两个仅包含唯一值的字典

iphone - Asihttprequest 61 错误

ios - AWSS3TransferManagerErrorCancelled 是什么意思以及如何摆脱它?

google-maps - 谷歌地图和谷歌地球应用程序