【问题标题】:Difference between [CLLocation] and CLLocation[CLLocation] 和 CLLocation 的区别
【发布时间】:2017-02-16 06:10:32
【问题描述】:

我正在尝试查找我从用户那里获取的位置与我硬编码的位置之间的距离,但我收到一个错误,无法将 [CLLocation] 转换为 CLLocation。

func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    let location = CLLocationCoordinate2D(latitude: locations[0].coordinate.latitude, longitude: locations[0].coordinate.longitude)
     longitude = locations[0].coordinate.longitude
     latitude = locations[0].coordinate.latitude
    let coordinate₀ = CLLocation(latitude: 5.0, longitude: 5.0)

    let distanceInMeters = coordinate₀.distance(from: locations)
    print(distanceInMeters)
}

【问题讨论】:

  • [CLLocation]CLLocation 的数组
  • 访问locations数组中的最后一个对象,获取用户的当前位置。
  • 谢谢你。我不敢相信我没有意识到这一点。

标签: ios swift cllocation


【解决方案1】:

在我看来,您仍然不了解 Swift 语言的基础知识。或许你应该先去here 阅读 Swift 文档。

您正在使用一个 CLLocation 数组,而函数 distance(from: ) 接受单个 CLLocation 的参数。

看起来你想要做的是替换你的

let distanceInMeters = coordinate.distance(from: locations)

let distanceInMeters = coordinate.distance(from: location)

【讨论】:

    【解决方案2】:

    您需要在下面的行中传递location 而不是locations

    let distanceInMeters = coordinate₀.distance(from: locations)
    

    【讨论】:

      【解决方案3】:

      [CLLocation] 是一个 CLLocation 数组,试试下面

      func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
          let location = CLLocationCoordinate2D(latitude: locations[0].coordinate.latitude, longitude: locations[0].coordinate.longitude)
           let loc = locations[0]
           longitude = loc[0].coordinate.longitude
           latitude = loc[0].coordinate.latitude
          let coordinate₀ = CLLocation(latitude: 5.0, longitude: 5.0)
      
          let distanceInMeters = coordinate₀.distance(from: loc)
          print(distanceInMeters)
      }
      

      【讨论】:

        猜你喜欢
        • 2011-02-07
        • 2011-07-09
        • 1970-01-01
        • 2011-01-20
        • 1970-01-01
        • 1970-01-01
        • 2013-03-03
        • 2011-12-22
        • 1970-01-01
        相关资源
        最近更新 更多