2016-11-29 2 views
19

В редких случаях наложение на моей карте (маленькая голубая точка) получает странный блик (большая синяя область справа) (как видно на рисунке). Иногда масштабирование или выключение фиксирует его, но не всегда. Не могу найти ничего о том, почему это произойдет. Это как-то связано с тем, как это делается?Swift MKMapView Polygon Overlay glitching

enter image description here

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 
    } 
+1

В моем случае я получаю хороший круг. Вы уверены, что между ними нет кода рисования? – Ramis

+1

Это единственный метод, когда у меня есть код рисования. Это кажется случайным. В большинстве случаев это нормально, но бывает более открытым, когда я помещаю больше точек на экран @ramis – Steve

+1

Случается ли это только на симуляторе? –

ответ

0

Чтобы удалить эту ошибку, единственным решением является переход на Google Maps, потому что ошибка связана с прошивкой 10+. Вы можете сообщить об этой ошибке Apple Bug Reporting: https://developer.apple.com/bug-reporting/

Смежные вопросы