在不使用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)
}
有iOS 9: CLLocationManager.requestLocation()
。这个API就是为你的目的而提供的——一种在不开启连续跟踪的情况下在一个谨慎的时间抓取位置的方法。
预览它的工作原理。
在iOS 8及更低版本中,我不知道有API