24

Objective C (私は経験がありません) では、次のように緯度と経度で CLLocation オブジェクトを初期化できます。

CLLocation *myLocation = [[CLLocation alloc]  initWithLatitude:your_latitiude_value longitude:your_longitude_value];

しかし、Swift でそれを行うにはどうすればよいでしょうか。

私はこれを試しました、

let loc_coords = CLLocationCoordinate2D(latitude: your_latitiude_value, longitude: your_longitude_value)

let loc = CLLocation().coordinate(loc_coords)

しかし、私はこのエラーが発生します:

タイプ「(CLLocationCoordiate2D)」の引数リストで「座標」を呼び出すことはできません

locationManager 内で distanceFromLocation メソッドを使用したいので、CLLocation オブジェクトである必要があります。

あなたが助けてくれることを願っています、ありがとう!

4

2 に答える 2

31

私はそれをテストするために自分の Mac の近くにいませんが、以下は動作するはずです。次のように、緯​​度と経度の値を CLLocaion 初期化子に渡すだけです。

let myLocation = CLLocation(latitude: your_latitiude_value, longitude: your_longitude_value) 

参考までに、ドキュメントを確認できます

于 2015-04-28T23:34:15.653 に答える
13

緯度と経度が必要な初期化子だけが必要な場合、コードは次のようになります。

let latitude: CLLocationDegrees = 37.2
let longitude: CLLocationDegrees = 22.9

let location: CLLocation = CLLocation(latitude: latitude, 
  longitude: longitude)

より多くのパラメーターを取る他のイニシャライザーがありますが、それらについては質問しませんでした。

于 2015-04-28T23:34:00.240 に答える