In my app, I have an MKMapView. In the MKMapView, I create a circle (MKCircle) overlay and position it to the centerCoordinate. I then use the function that comes with the map delegate "mapViewDidChangeVisibleRegion(_ mapView: MKMapView)" to automatically delete the overlay, and add a new one in the new center of the map.
I got some really glitchy results with this. Individual map tiles that the overlay was covering would go unloaded for a tiny amount of time, but there were so many that did that and they did it so often, that it looked really bad.
Also, if I pan the map back and forth really quickly with my finger, the overlay can sometimes get delayed and not follow the center of the screen immediately.
How can I prevent this glitching from happening?