2015-03-13 40 views
2

当用户按下按钮时,我想将它们的经度和纬度存储为变量。我不明白如何使用Coordinate2D方法。而不是println(locManager.location)我想打印(或作为单独的变量存储)经度和纬度。请帮忙。我的代码如下。Swift:获取用户的位置坐标作为经度和纬度?

class ViewController: UIViewController, CLLocationManagerDelegate { 

    var locManager = CLLocationManager() 

    @IBOutlet var pushToParkText: UILabel! 

    @IBAction func carButton(sender: UIButton) { 
    println(locManager.location) 
    } 

    @IBOutlet var labelLatitude: UILabel! 
    @IBOutlet var labelLongitude: UILabel! 

    override func viewDidLoad() { 
    super.viewDidLoad() 

    // Core Location Manager asks for GPS location 
    locManager.delegate = self 
    locManager.desiredAccuracy = kCLLocationAccuracyBest 
    locManager.requestWhenInUseAuthorization() 
    locManager.startMonitoringSignificantLocationChanges() 

    // Check if the user allowed authorization 
    if (CLLocationManager.authorizationStatus() == CLAuthorizationStatus.AuthorizedWhenInUse || 
     CLLocationManager.authorizationStatus() == CLAuthorizationStatus.Authorized) 
    {  
     println(locManager.location) 

     } else { 
      labelLatitude.text = "Location not authorized" 
      labelLongitude.text = "Location not authorized" 
     } 
    } 
} 

回答

13
let latitude = locManager.location.coordinate.latitude 
let longitude = locManager.location.coordinate.longitude 
+0

谢谢您的帮助! – ds1 2015-03-13 16:09:47

+1

@ ds1如果这个答案对您有帮助,请将此标记为正确答案 – kirugan 2016-05-06 15:54:04