Я хочу добавить больше полигонов в MKMapView. У меня проблема в том, что весь мир должен быть темного прозрачного цвета, а мои полигоны должны быть белого прозрачного цвета. Это эскиз от дизайнера из моей команды, и это должен быть желаемый результат:
Код, который я использовал, таков:
let world = WorldPolygon.instance(interiorPolygons: myPolygons)
mapView.addOverlay(world)
for poly in myPolygons {
mapView.addOverlay(poly)
}
И в MKMapView
делегат mapView(_ mapView: MKMapView, rendererFor overlay: MKOverlay)
У меня есть следующий код:
if let worldPolygon = overlay as? WorldPolygon {
let result = MKPolygonRenderer(overlay: worldPolygon)
result.lineWidth = 1
result.strokeColor = .clear
result.fillColor = UIColor(red: 0.0, green: 0.0, blue: 0.0, alpha: 0.5)
return result
} else if let poly = overlay as? MyMapPolygon {
let result = MKPolygonRenderer(overlay: poly)
result.lineWidth = 2
result.strokeColor = poly.strokeColor
return result
}
Теперь мой код имеет следующий код:
Моя проблема в том, как сделать так, чтобы синий многоугольник внутри зеленого многоугольника имел прозрачный цвет? Я упоминаю, что это происходит только тогда, когда у меня есть более одного внутреннего многоугольника в мире многоугольника.
Большое спасибо и хорошего дня (будь в безопасности), счастливого кодирования:)