2

iOS 5 で MapKit を使用していますが、関数didSelectAnnotationViewは以前に正しく呼び出されていviewForAnnotationます。ただし、iOS 6 では、 のdidSelectAnnotationView後に呼び出されviewForAnnotationます。どうすれば修正できますか?

4

1 に答える 1

2

これが起こっていることだと確信していますか?他の場所にブレークポイントを設定するまで、最初は同じ結論に導くコードがありました。

didSelectAnnotationView(ある時点で) マップ ビューを呼び出す場合addAnnotation、ログ メッセージまたはブレークポイントが誤解を招く可能性があります。

iOS5 と iOS6 の間で気づいた違いは、addAnnotationを使用すると、iOS5 では呼び出される前に遅延viewForAnnotationが発生するのに対し、iOS6 ではすぐに呼び出されることです。コード内の操作の順序を変更する必要がありましたが (addAnnotation最後に呼び出されるように)、iOS の両方のバージョンで同じコードが機能します。

于 2012-11-06T18:03:06.033 に答える