这是一个相当大、复杂的问题,因此我将为您概述实现此操作的步骤。如果您需要在某个特定步骤上获得帮助,我建议您发布一个单独的、具体的问题。
我们开始吧:
当点击“绘制模式”按钮时,在地图上方添加一个视图。 确保该视图接收所有的触摸事件,以便用户绘制时地图不会滚动。 子类化该视图并重写touchesBegan
和touchesMoved
方法进行绘制。您可以参考这里的教程。
在视图坐标系中保留多边形所有顶点的数组。
当用户停止绘制时,在touchesEnded
方法中将上述点转换为地图坐标。
这篇文章可能会有所帮助。
从位置坐标绘制一个多边形。
这篇文章会有所帮助。
移除在步骤1中添加的视图并关闭绘制模式。https://www.raywenderlich.com/87899/make-simple-drawing-app-uikit-swift
在这里,你应该能够弄清如何在屏幕上绘制。