swift MapKit & iOS 16.4渲染折线时出现问题

dsekswqp  于 2023-06-21  发布在  Swift
关注(0)|答案(1)|浏览(105)

你们好吗
所以,我有一个iOS应用程序,用Swift制作的。在这个应用程序中,我有一个Map,用Map工具包制作,在iOS 16.4上,折线无法正确渲染。
我有自定义瓷砖,但我不认为这是问题,因为在上述版本,它的工作原理就像一个魅力。
我已经搜索了修复并做了一些,但到目前为止没有一个工作。另外,当我的瓷砖 Flink ,当我放大/缩小多边形线出现,但当它停止 Flink 它消失...
我在控制台上得到一个错误,但即使在创建折线的情况下错误也会出现,但我搜索了一下,没有找到任何相关的

[VKDefault]缺少地面网格层的DaVinciGroundRenderables

这是我的折线渲染:

if overlay is MKPolyline {
      let polylineRenderer = MKPolylineRenderer(overlay: overlay)
      polylineRenderer.strokeColor = UIColor.orange
      polylineRenderer.lineWidth = 7.0
      polylineRenderer.alpha = 1.0
      return polylineRenderer

如果有人有一些提示或已经做了修复,我会很感激一些帮助:)
感谢和问候~彼得

izkcnapc

izkcnapc1#

我找到了一个答案,问题是因为折线的层,所以,在新的iOS中,折线层在我拥有的其他层后面,比如瓷砖。我强迫它,一直到顶部。
一段代码:

func addOverlayOnTop(_ overlay: MKOverlay) {
    if let last = self.overlays.last {                  // its not the first overlay
      self.insertOverlay(overlay, above: last)        // make sure to add it above all
    } else {                                            // its the first one
      self.addOverlay(overlay)                        // just add it
    }
  }
}

And oh the class that creates the polylien, call this function.

相关问题