我在Xcode中注意到以下一个简单,全新的项目.
如果,在ViewController.swift文件中导入CoreLocation,然后在viewDidLoad方法中我添加...
打印(CLLocationManager.locationServicesEnabled())
...,当应用程序在模拟器中运行时,Xcode打印出true.我原以为默认情况下会禁用位置服务,但正如您自己可以看到的那样,情况正好相反.如果我想要我可以添加更多代码来收集有关用户的位置信息,所有这些都无需征得许可.
任何人都可以解释为什么会这样吗?
我正在尝试向我的地图添加圆形叠加层。我跟着苹果文档走了这么远,但是当我运行应用程序时没有出现覆盖。这是我的代码...
@IBOutlet var map: MKMapView!
let location = CLLocationCoordinate2DMake(40.73085, -73.99750)
let regionRadius: CLLocationDistance = 5500
func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer {
let diskRenderer: MKCircleRenderer = MKCircleRenderer.init()
diskRenderer.fillColor = UIColor.init(red: 0, green: 192, blue: 295, alpha: 1)
return diskRenderer
}
override func viewDidLoad() {
super.viewDidLoad()
let coordinateRegion = MKCoordinateRegionMakeWithDistance(location, regionRadius, regionRadius)
map.setRegion(coordinateRegion, animated: true)
let diskOverlay: MKCircle = MKCircle.init(centerCoordinate: location, radius: 5000)
map.addOverlay(diskOverlay)
// Do any additional setup after loading the view.
}
Run Code Online (Sandbox Code Playgroud)
我正在自学所有这些东西,所以如果我犯了一个明显的错误,请原谅我。