Since - (void)mapViewDidFinishLoadingMap:(MKMapView *)mapView
is not called when the tiles are loaded from cache, is there a way to know when all the tiles have been loaded (either from cache or from the mapping servers) and displayed?
Is there any delegation that intimates that tiles have been loaded ?
Here is some source code I wrote: https://github.com/jonathanlking/mapViewTest
Why don't you think about the problem like this;
When the map view will change, mapView:regionDidChangeAnimated:
will be called.
From there mapViewWillStartLoadingMap:
will be called.
Next mapViewDidFailLoadingMap:withError:
or mapViewDidFinishLoadingMap:
will be called if the tiles have been fetched from the server.
However if neither are called, you can assume the tiles are being loaded from the cache.