Xcodeの位置情報サービスを利用して、プログラム。私は、プログラムを設定し、アプリケーションをコンパイルしようとすると、単純に「宣言されていない型の使用」エラーを取得するというビデオの手順に従いました。Swift:CLLocationManagerDelegateとCoreLocation.frameworkを使用すると「宣言されていないタイプの使用」エラーが発生する
https://www.youtube.com/watch?v=qrdIL44T6FQ - YouTube動画へのリンク。
問題はクラス作成行で発生します。
import UIKit
import MapKit
import CoreLocation
class ViewController: UIViewController, MKMapViewDelegate, CLLocationManagerDelegate
{ //^Use of undeclared type
@IBOutlet weak var mapView: MKMapView!
let locationManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.locationManager.delegate = self
self.locationManager.desiredAccuracy = kCLLocationAccuracyBest
self.locationManager.requestWhenInUseAuthorization()
self.locationManager.startUpdatingLocation()
self.mapView.showsUserLocation = true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreate-d.
}
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let location = locations.last
let center = CLLocationCoordinate2D(latitude: location!.coordingate.latitude, longitude: location!.coordinate.longitude)
let region = MKCoordinateRegion(center: center, span: MKCoordinateSpan(latitudeDelta: 1, longitudeDelta: 1))
self.mapView.setRegion(region, animated: true)
self.location.stopUpdatingLocation()
}
func locationManager(manager: CLLocationManager, difFailWithError error: NSError)
{
print("Errors: " + error.localizedDescription)
}
}
なぜエラーが発生しているのかわかりません。 "Link Binary With Libraries"セクションにCoreLocation.frameworkを追加しました。私はInfo.plistに "NSLocationWhenInUseUsageDescription"を必ず追加しました。 ビデオで2:26にマップビューキットをコード自体に接続しました。
これを行う方法は他にも興味があります。私は、プログラムで実行するための基本的なロケーションサービスのクリアランスを取得しようとしています。
バージョン:Xcodeのバージョン7.3.1