我在 iOS 上使用 Nokia Here map SDK,标记的默认大小太大。 documentation指出我可以使用 setSize 来指定标记的 CGSize,但是当我尝试使用该函数时,它似乎对我的 PDF UIImage 没有任何影响。该文档没有给出示例,但我尝试按以下方式使用它:
var marker: NMAMapMarker
required init?(coder aDecoder: NSCoder) {
marker = NMAMapMarker()
marker.icon = NMAImage(uiImage: UIImage.init(named: "MarkerA")!)
marker.setSize(CGSize(width: 10, height: 10), forZoomRange: NSMakeRange(0, 20))
super.init(coder: aDecoder)
}
func addMarker(coordinates coord: NMAGeoCoordinates) {
map.remove(mapObject: marker)
marker.coordinates = coord
map.add(mapObject: marker)
map.set(geoCenter: coord, animation: NMAMapAnimation.none)
}
它按预期加载标记,但尽管我对 CGSize 进行了更改,但它的大小相同。
我还尝试在添加点后初始化 map 后更改大小,但无济于事。
我是不是漏掉了一步?
最佳答案
The documentation states that I can use setSize to specify the CGSize of my marker, but when I attempt to use the function it doesn't seem to have any affect on my PDF UIImage
是的,HERE SDK Premium 版本的正确行为,因为它有一个注释:
This method only affects rendering of SVG icons.
对于其他图标类型,NMAMapMarker 不允许调整大小,因为图像质量会受到影响。 您可以使用默认的 UIKit/UIGraphics 方法调整图像大小,然后使用调整大小的图像创建新标记。
也许您需要将同一区域的多个标记收集到一个?如果是的话,请查看NMAClusterLayer .
关于ios - 我什么时候可以设置 NMAMapMarker 的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56118310/