添加带有平铺地图的叠加层应该很容易。我有一个很大的问题。他们没有表现出来。
我在15 16和17中有Bayeux中心的地图图块放大文件夹baymap。 我将文件夹滑入项目中。
这是代码
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
}
}
我编辑了问题,添加了打印“call overlay”和“is MKTileoverlay”。 它们都在控制台中打印。
巴约的苹果地图很好但没有重叠。
在控制台中,我收到了许多这样的错误,这些错误指的是不在捆绑中的磁贴。
:加载URL文件时出错:/// Users / colinmcgarry / Library / Developer / CoreSimulator / Devices / 5A9A20A4-9C3F-4A65-8823-9721463FF985 / data / Containers / Bundle / Application / D2C87A46-E848-4C0D-9B05- 30E731EC037F / TileOverlaystack.app / baymap / 17/65283 / 86214.png /:错误域= NSURLErrorDomain代码= -1100“在此服务器上找不到请求的URL。”
任何人都可以看到我做错了什么。在Swift中,是否有一个很好的教程用于捆绑瓷砖覆盖?
感谢
答案 0 :(得分:0)
找到解决方案。 carte_indice.geometryFlipped = true
应该是假的。
取决于磁贴系统。