6

マップビューに青い点(自分の位置)と別のピンを設定するときに動的ズームを使用する方法があるかどうかを知りたい...マップビューをロードするときに、これら2つのポイントを同じフレームに表示したい.. 。出来ますか?ありがとう

4

1 に答える 1

9

はい、可能です。2番目の注釈を追加した後。このサンプルコードは、任意の数のアノテーションに対して機能するはずです。

MKMapRect zoomRect = MKMapRectNull;
NSArray *annotations = [mapView annotations];
for (MKAnnotation *annotation in annotations) {

    MKMapPoint annotationPoint = MKMapPointForCoordinate(annotation.coordinate);
    MKMapRect pointRect = MKMapRectMake(annotationPoint.x, annotationPoint.y, 0, 0);
    if (MKMapRectIsNull(zoomRect)) {
        zoomRect = pointRect;
    } else {
        zoomRect = MKMapRectUnion(zoomRect, pointRect);
    }

}

[mapView setVisibleMapRect:zoomRect animated:YES];
于 2012-05-18T02:19:06.360 に答える