質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

1回答

479閲覧

swiftのmapkitで複数のピンを表示させたい

tactaco

総合スコア15

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2023/03/18 04:47

実現したいこと

お知恵をお貸しいただければ幸いです。
現在個人的にマップアプリを作成しております。
その中でローカル検索をして複数のピンを立てた際、地図を縮小させてそれら複数のピンを全て表示される様にしたいです。

前提

色々検索をしてみた結果、
self.mapView.showAnnotations(self.mapView.annotations, animated: true)
を入れると縮小されて表示されるとあったのですが、
確かに縮小されて表示されますが必ず現在地が含まれる為、現在地から離れた場所をマップに表示させて検索をするとマップがかなり小さくなりピンも重なって表示されてしまうのです。

発生している問題・エラーメッセージ

該当のソースコード

swift

//検索条件を作成する let request = MKLocalSearch.Request() request.naturalLanguageQuery = searchBar.text //検索範囲はマップビューと同じにする request.region = recordMapView.region //ローカル検索を実行する let localSearch:MKLocalSearch = MKLocalSearch(request: request) localSearch.start { (respons, Error) -> Void in if Error != nil { print("ピンなし") } else if respons!.mapItems.count > 0 { for placemark in respons!.mapItems { let annotation = MKPointAnnotation() annotation.coordinate = CLLocationCoordinate2DMake(placemark.placemark.coordinate.latitude, placemark.placemark.coordinate.longitude) annotation.title = placemark.placemark.name annotation.subtitle = "" self.mapView.addAnnotation(annotation) self.mapView.showAnnotations(self.mapView.annotations, animated: true)

試したこと

self.mapView.showAnnotations(self.mapView.annotations, animated: true)
を無くして
self.mapView.region = MKCoordinateRegion(center: annotation.coordinate, latitudinalMeters: 1500.0, longitudinalMeters: 1500.0)
を入れると複数ある検索結果の一つだけがマップに表示される形になる。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

別途配列を入れる事によって解決いたしました。

投稿2023/03/18 08:46

tactaco

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問