1
私はカスタムタイルサービスを作成し、それをmapViewに追加しました。私は同じコードを使用し、Xcode 8でMapViewの戻り値の型を持つフレームワークライブラリを作成しました。次に、サンプルテストアプリケーションを使用してそのライブラリを読み込み、ライブラリで使用されたメソッドを呼び出してmapViewに追加しました。 だから私が呼ぶとき、私の問題があり、それをMapViewのために、その方法はMapKitマップアプリフレームワークライブラリからMapViewを使用する方法Xcode8
import UIKit
import MapKit
import mapLib
class ViewController: UIViewController {
@IBOutlet weak var mapV: MKMapView!
override func viewDidLoad() {
super.viewDidLoad()
let view = mapLib.createMap(mapView: mapV)
mapV.addOverlays(view.overlays)
//any additional setup after loading the view, typically from a nib.
}
に使用されるライブラリ
import Foundation
import MapKit
public class mapLib: NSObject{
public class func createMap(mapView: MKMapView) ->MKMapView{
let mapView = mapView
//custom map URL
let template = "http://tile.openstreetmap.org/{z}/{x}/{y}.png"
let overlay = MKTileOverlay(urlTemplate: template)
overlay.canReplaceMapContent = true
mapView.add(overlay, level: .aboveLabels)
return mapView;
}
}
コードで使用されていない、私のカスタムマップ
コードを表示
私はアプローチする方法や他の方法でそれを行うことを明確にする必要があります:)
のような何かが欠けていると「0__abort_with_payload」 – Saneth
が、その後追加語るされていますあなたのviewControllerのデリゲートと実装を試してみてください。セットアップは@Saneth –
func mapview(_ mapview:MKMapView、レンダラーオーバーレイ:MKOverlay) - > MKOverlayRenderer {>}をテストするのは難しいです。このメソッドの問題を追加する方法は他にありますか? – Saneth