我没有在文档中找到任何如何以编程方式更改楼层的方法。例如:
我为 1 个房间加载了一个特定的多边形,我想将楼层 map 更改为特定的楼层(例如缩放到 2 层,然后添加我的多边形)。
用信息框添加多边形不是问题,我只是想知道是否可以通过编程方式选择正确的楼层。
喜欢这里:
我仍然知道有 GMSIndoorDisplayDelegate - 我可以设置事件建筑。应该有一个“activeLevel”方法,但我无法分配任何值。
最佳答案
我找到了关于如何强制更改特定建筑物楼层的解决方案。
- 将委托(delegate)
GMSIndoorDisplayDelegate
添加到类中, 设置委托(delegate):
mapView.delegate = self mapView.indoorDisplay.delegate = self
添加委托(delegate)方法:
func didChangeActiveBuilding(building: GMSIndoorBuilding!) { if let currentBuilding = building { var levels = currentBuilding.levels as! [GMSIndoorLevel] mapView.indoorDisplay.activeLevel = levels[2] // set the level (key) } } func didChangeActiveLevel(level: GMSIndoorLevel!) { println("will be called after activeBuilding") }
附言友情提醒,最上层是数组中的第一项。它是倒退的。
关于ios - Google Maps SDK iOS 以编程方式更改楼层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31183728/