В редких случаях наложение на моей карте (маленькая голубая точка) получает странный блик (большая синяя область справа) (как видно на рисунке). Иногда масштабирование или выключение фиксирует его, но не всегда. Не могу найти ничего о том, почему это произойдет. Это как-то связано с тем, как это делается?Swift MKMapView Polygon Overlay glitching
func drawLocations(_ loc: CLLocation)
{
let center = CLLocationCoordinate2D(latitude: loc.coordinate.latitude, longitude: loc.coordinate.longitude)
let lat: CLLocationDegrees = center.latitude
let long: CLLocationDegrees = center.longitude
var points = [CLLocationCoordinate2DMake(lat,long),CLLocationCoordinate2DMake(lat,long),CLLocationCoordinate2DMake(lat,long),CLLocationCoordinate2DMake(lat,long)]
let polygon = MKPolygon(coordinates: &points, count: points.count)
DispatchQueue.main.async(execute: {
self.mapView.add(polygon)
})
}
func mapView(_ mapView: MKMapView!, rendererFor overlay: MKOverlay!) -> MKOverlayRenderer!
{
if overlay is MKPolygon
{
let polygonView = MKPolygonRenderer(overlay: overlay)
polygonView.lineWidth = 4
polygonView.strokeColor = UIColor(red: 30/255.0, green: 12/255.0, blue: 242/255.0, alpha: 0.4)
return polygonView
}
return nil
}
В моем случае я получаю хороший круг. Вы уверены, что между ними нет кода рисования? – Ramis
Это единственный метод, когда у меня есть код рисования. Это кажется случайным. В большинстве случаев это нормально, но бывает более открытым, когда я помещаю больше точек на экран @ramis – Steve
Случается ли это только на симуляторе? –