【问题标题】:Wrong Location - located in San Francisco and not in France位置错误 - 位于旧金山而不是法国
【发布时间】:2014-08-23 09:23:34
【问题描述】:

我在法国,当我尝试新的func locationManager 功能时,我的地图视图将我定位在旧金山。有什么想法吗?

override func viewDidLoad() {
    super.viewDidLoad()   

    if (CLLocationManager.locationServicesEnabled())
    {
        locationManager = CLLocationManager()
        locationManager.delegate = self
        locationManager.desiredAccuracy = kCLLocationAccuracyBest
        locationManager.distanceFilter = kCLDistanceFilterNone
        locationManager.requestAlwaysAuthorization()
        locationManager.startUpdatingLocation()
    }
}

func locationManager(manager: CLLocationManager!, didUpdateLocations locations: [AnyObject]!) {
    let location = locations[locations.count-1] as CLLocation

    let center = CLLocationCoordinate2D(latitude: location.coordinate.latitude, longitude: location.coordinate.longitude)
    let region = MKCoordinateRegion(center: center, span: MKCoordinateSpan(latitudeDelta: 0.01, longitudeDelta: 0.01))

    self.map.setRegion(region, animated: true)
}

我正在使用模拟器。

【问题讨论】:

  • 您使用的是模拟器还是实际的iOS设备?
  • 我正在使用模拟器

标签: swift cllocationmanager


【解决方案1】:

iOS 模拟器默认显示美国 - 圣弗兰,并且不会为您提供 Mac 实际位置的估计值。

但是,您可以像这样模拟运动甚至特定位置:

模拟器中的Debug菜单下,最后一个条目是“Location”;这为您提供了一个子菜单:

  • 自定义位置
  • 苹果专卖店
  • 苹果
  • 城市自行车骑行
  • 城市跑
  • 高速公路
  • 自定义位置允许您输入纬度/经度值。

骑自行车、City Run 和 Freeway Drive 是模拟移动位置(当然是在库比蒂诺)。

【讨论】:

  • @PMIW 绝对没问题 :)
【解决方案2】:

除了伍德斯托克的答案,您还可以在方案中设置默认位置。它在运行/选项中。有一个允许位置模拟的选项和一系列可用于测试的标准默认值。如需更多选项,您可以将 GPX 文件添加到您的项目中。

【讨论】:

  • 谢谢你的精确 :) “运行>选项”在哪里?
  • 编辑方案,从左侧列中选择运行,然后选择选项选项卡。
  • 谢谢,我找到了另一种方法!再次感谢!
猜你喜欢
  • 2015-12-27
  • 1970-01-01
  • 2016-07-13
  • 1970-01-01
  • 2017-06-09
  • 2015-12-02
  • 2015-12-08
  • 1970-01-01
  • 2016-01-10
相关资源
最近更新 更多