在没有didUpdateLocations的情况下获取用户Lat和Lng的替代方法?

时间:2015-07-09 21:53:27

标签: ios swift userlocation

是否有另一种方法可以在不使用函数didUpdateLocations的情况下获取用户的纬度和经度。我只想这样做一次,并在加载视图时设置初始区域,而不是每次更新用户的位置时。

我知道我可以使用下面的代码获取用户的Lat和Lng,但还有替代方案吗?

func locationManager(manager:CLLocationManager, didUpdateLocations locations:[AnyObject]) {

    var userLocation:CLLocation = locations[0] as CLLocation

    var latitude:CLLocationDegrees = userLocation.coordinate.latitude

    var longitude:CLLocationDegrees = userLocation.coordinate.longitude

    var latDelta:CLLocationDegrees = 0.01

    var lonDelta:CLLocationDegrees = 0.01

    var span:MKCoordinateSpan = MKCoordinateSpanMake(latDelta, lonDelta)

    var location:CLLocationCoordinate2D = CLLocationCoordinate2DMake(latitude, longitude)

    var region:MKCoordinateRegion = MKCoordinateRegionMake(location, span)

    myMap.setRegion(region, animated: true)

}

1 个答案:

答案 0 :(得分:0)

适用于iOS 9:CLLocationManager.requestLocation()。此API仅用于您的目的 - 一种在谨慎的时间抓取位置而无需启用连续跟踪的方法。

有关其工作原理的预览,请参阅this page

在iOS 8及更低版本中,我不知道API。