Mam problemy z ładowaniem płytek 512x512px w MKMapKit. Serwer zapewnia płytki 5 .12x512 .jpeg.MKTileOverlay z Retina-Tiles
Nie znalazłem żadnego rozwiązania ani implementacji przykładowej niestandardowej płytki siatkówki w MKMapView.
Co robię:
Kiedy załadować je do MKMapView z
overlay = [[MKTileOverlay alloc] initWithURLTemplate:template];
overlay.tileSize = CGSizeMake(512.0f, 512.0f);
[_mapView insertOverlay:overlay atIndex:MAP_OVERLAY_INDEX_TILE level:MKOverlayLevelAboveLabels];
... Płytki są skalowanie poprawne, ale tylko połowa z nich jest ładowany (nie tylko wizualnie - i powąchał wnioski i płytki brakuje)
z
overlay = [[MKTileOverlay alloc] initWithURLTemplate:template];
overlay.tileSize = CGSizeMake(256.0f, 256.0f);
[_mapView insertOverlay:overlay atIndex:MAP_OVERLAY_INDEX_TILE level:MKOverlayLevelAboveLabels];
... wszystkie płytki są wyświetlane, ale skalowanie nieprawidłowy
To jest moja metoda rysunek:
(MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id <MKOverlay>)overlay
{
MKOverlayRenderer *overlayRenderer = nil;
if([overlay isKindOfClass:MKTileOverlay.class])
{
overlayRenderer = [[MKTileOverlayRenderer alloc] initWithTileOverlay:overlay];
}
return overlayRenderer;
}
... The overlayRenderer.contentScaleFactor jest zawsze 1 ... nieważne co tileSize (iOS 7.1 symulator siatkówki)
Jakieś sugestie?
poważaniem, Steve
Znalazłeś rozwiązanie tego problemu? – Hyndrix