iOSの地図をタッチしてアノテーションを付けて、それぞれの場所の詳細な住所(Placemark)を取得したいです。Swiftでこれを達成するにはどうすればよいですか?
前もって感謝します。
iOSの地図をタッチしてアノテーションを付けて、それぞれの場所の詳細な住所(Placemark)を取得したいです。Swiftでこれを達成するにはどうすればよいですか?
前もって感謝します。
マップ上のタッチに反応するには、mapView のタップ認識を設定する必要があります
でviewDidLoad
:
let gestureRecognizer = UITapGestureRecognizer(
target: self, action:#selector(handleTap))
gestureRecognizer.delegate = self
mapView.addGestureRecognizer(gestureRecognizer)
タップを処理し、タップされた位置座標を取得します。
func handleTap(gestureRecognizer: UITapGestureRecognizer) {
let location = gestureRecognizer.location(in: mapView)
let coordinate = mapView.convert(location, toCoordinateFrom: mapView)
// Add annotation:
let annotation = MKPointAnnotation()
annotation.coordinate = coordinate
mapView.addAnnotation(annotation)
}
これで、MKMapView デリゲート関数を実装して注釈を描画するだけで済みます。簡単なグーグル検索で残りの部分が得られるはずです。