このコードをviewWillLayoutSubviewsで使用して、マップの初期領域を設定します。
CLLocationCoordinate2D startCoord = CLLocationCoordinate2DMake(13.747266, 100.526804);
MKCoordinateRegion adjustedRegion = [self.mapView regionThatFits:MKCoordinateRegionMakeWithDistance(startCoord, 800, 800)];
[self.mapView setRegion:adjustedRegion animated:YES];
NSLog(@"%f",adjustedRegion.span.latitudeDelta);
ただし、初期ズームレベルは機能しません。座標は正しいですが、常に最大レベルにズームインします。地域のスパンを確認して0.0を得ました。これを修正するにはどうすればよいですか。
スパンを設定する必要があるので、ここにスパン値を指定します。
adjustedRegion.span.longitudeDelta = 0.005;
adjustedRegion.span.latitudeDelta = 0.005;
カスタムスパン設定:
region.span.longitudeDelta = 0.04;
region.span.latitudeDelta = 0.04;
それ以外の場合はプログラムで:
region.span.longitudeDelta = geoMapView.region.span.latitudeDelta;
region.span.latitudeDelta = geoMapView.region.span.latitudeDelta;