- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我浏览了 Google Maps docs并且描述似乎没有多大帮助。
我正在关注旧的 tutorial它使用了 markerInfoContents
但是,当我使用委托(delegate)时,它没有返回我预期的结果。
使用 markerInfoContents
:我的自定义 View 似乎覆盖了默认 View
当我使用 markerInfoWindow
时,结果符合我的预期:
我只是像这样从 xib 文件中拉入自定义 UIView:
func mapView(_ mapView: GMSMapView, markerInfoWindow marker: GMSMarker) -> UIView? {
let placeMarker = marker as! PlaceMarker
print(placeMarker.name)
if let infoView = UIView.viewFromNibName(name: "MarkerInfoView") as? MarkerInfoView {
infoView.nameLabel.text = placeMarker.name
return infoView
} else {
return nil
}
}
(将 markerInfoWindow
替换为 markerInfoContents
以获得第一个图像结果)
使用 markerInfoContents
它创建了框的 anchor 和阴影效果。使用 markerInfoWindow
时,它不会像教程中那样创建 anchor 或阴影效果。
任何帮助都会很棒!
最佳答案
如发布的文档链接中所述,使用 markerInfoContents
时:“如果此方法返回一个 View ,它将放置在默认信息窗口框架内。”,因此您的 View 被限制在默认窗口(这就是它显示 anchor 和阴影的原因)。看起来默认信息窗口比您的 xib 中的 UIView 小,所以它会截断它。
markerInfoWindow
的使用显示了你直接传递的 View ,所以如果它没有 anchor 或阴影,它就不会出现。
关于iOS:谷歌地图 API - markerInfoWindow 与 markerInfoContents,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44223716/
我浏览了 Google Maps docs并且描述似乎没有多大帮助。 我正在关注旧的 tutorial它使用了 markerInfoContents 但是,当我使用委托(delegate)时,它没有返
我是一名优秀的程序员,十分优秀!