Das Hinzufügen eines Overlays mit einer gekachelten Karte soll einfach sein. Ich habe ein großes Problem. Sie zeigen es nicht.MKTileOverlay - Hinzufügen von Bündelkacheln
Ich habe Karte Fliesen des Zentrums von Bayeux in 15 16 und 17 zoom in einem Ordner baymap. Ich schob den Ordner in das Projekt.
hier ist der Code
import UIKit
import MapKit
class ViewController: UIViewController, MKMapViewDelegate, CLLocationManagerDelegate {
@IBOutlet weak var mapView: MKMapView!
let locationManager = CLLocationManager()
var latitude: CLLocationDegrees = 0.0
var longitude: CLLocationDegrees = 0.0
var cnt: Int = 0
override func viewDidLoad() {
super.viewDidLoad()
self.mapView.delegate = self
self.mapView.mapType = MKMapType.Standard
//Map centre
let centre = CLLocationCoordinate2D(latitude: 49.275,
longitude: -0.7028)
//Declare span of map
let span = MKCoordinateSpan(latitudeDelta: 0.01,
longitudeDelta: 0.01)
//Set region of the map
let region = MKCoordinateRegion(center: centre, span: span)
self.mapView.setRegion(region, animated: false)
self.mapView.regionThatFits(region)
//Get the URL template to the map tiles
let baseURL = NSBundle.mainBundle().bundleURL.absoluteString
let urlTemplate = baseURL.stringByAppendingString("baymap/{z}/{x}/{y}.png/")
print(urlTemplate)
let carte_indice = MKTileOverlay(URLTemplate:urlTemplate)
carte_indice.geometryFlipped = true
carte_indice.canReplaceMapContent = false
self.mapView.addOverlay(carte_indice)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func mapView(mapView: MKMapView!, rendererForOverlay overlay: MKOverlay!) -> MKOverlayRenderer!
{
print("call overlay")
if overlay is MKTileOverlay
{
print("is MKTileoverlay")
var renderer = MKTileOverlayRenderer(overlay:overlay)
renderer.alpha = 0.8
return renderer
}
return nil
}
}
ich die Frage bearbeitet haben print "Anruf-Overlay" hinzufügen und "ist MKTileoverlay". Beide drucken in der Konsole.
Die Apfelkarte von Bayeux zeigt gut, aber keine Überlagerung.
In der Konsole bekomme ich Dutzende von Fehlern wie diese, die sich auf Kacheln beziehen, die nicht im Paket enthalten sind.
: Fehler beim Laden des URL file: /// Users/colinmcgarry/Library/Developer/CoreSimulator/Geräte/5A9A20A4-9C3F-4A65-8823-9721463FF985/data/Behälter/Bundle/Anwendung/D2C87A46-E848-4C0D-9B05 -30E731EC037F/TileOverlaystack.app/baymap/17/65283/86214.png /: Fehler Domain = NSURLErrorDomain Code = -1100 "Die angeforderte URL wurde auf diesem Server nicht gefunden."
kann jemand sehen, was ich falsch mache. Gibt es ein gutes Tutorial in Swift?
danke