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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Q&A

解決済

1回答

2014閲覧

Mapkitでのピンの色の変更方法について

mm--_--mm

総合スコア113

Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

0グッド

0クリップ

投稿2015/08/15 11:57

いつもお世話になっております。

Objective-cでMapkitを使って開発をしているのですが、検索欄で入力した際に落ちてくるピンを立てた時に、赤ではなく別の色に変える方法を教えていただけますでしょうか?

下記のコードは、textfieldに文字を入力してそれを元にピンを立てるという処理を行っています。
しかし、赤色のピンが表示されてしまいます。

わかる方おりましたらよろしくお願い致します。

objective

1 request = [[MKLocalSearchRequest alloc] init]; 2 request.naturalLanguageQuery = sisetu_search.text; 3 request.region = mv.region; 4 5 search = [[MKLocalSearch alloc] initWithRequest:request]; 6 7 8 [search startWithCompletionHandler: 9 ^(MKLocalSearchResponse *response, NSError *error) 10 { 11 for (MKMapItem *item in response.mapItems) 12 { 13 MKPointAnnotation *point = [[MKPointAnnotation alloc] init]; 14 point.coordinate = item.placemark.coordinate; 15 point.title = item.placemark.name; 16 point.subtitle = item.placemark.title; 17 18 [mv addAnnotation:point]; 19 } 20 21 [mv showAnnotations:[mv annotations] animated:YES]; 22 }];

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

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

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

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

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

guest

回答1

0

ベストアンサー

アノテーションの色は、アノテーションが表示されるときに呼ばれる下記のメソッドの中で変更することができます。例えばこんな感じで。

-(MKAnnotationView*)mapView:(MKMapView*)mapView viewForAnnotation:(id)annotation { MKPinAnnotationView *annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"pin"]; // ・・・ [annotationView setPinColor:MKPinAnnotationColorGreen]; // ・・・ annotationView.annotation = annotation; return annotationView; }

ちょっとソースが古いですが、より詳細は下記を参照してみてください^^/
iPhoneアプリ開発の虎の巻

投稿2015/08/17 05:09

jollyjoester

総合スコア1585

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

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

mm--_--mm

2015/08/17 06:42

ご回答いただきありがとうございます。 書いていただいたソースを貼り付けてもピンの色は変わらなかったのですが、 他に書かなくてはいけないものはあるのでしょうか?
jollyjoester

2015/08/19 03:43

該当メソッドはMKMapViewDelegateのメソッドです。 なので .hファイルでプロトコルの宣言を追加 @interface ViewController : UIViewController <MKMapViewDelegate> .mファイルでmvの初期化のときにdelegateを設定 mv.delegate = self; をしてみるといかがでしょうか?
mm--_--mm

2015/09/25 06:15

返事が遅くなってしまいすいません。 無事にできました! ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問