マップを表示するときに、ユーザーの位置を中央に表示し、約 2 のスパンで表示したいと考えています。ユーザーの周囲 5k の距離。私のコードは次のとおりです。
- (void)viewDidLoad
{
[super viewDidLoad];
mapView.mapType = MKMapTypeStandard;
mapView.showsUserLocation = YES;
MKUserLocation *userLocation = mapView.userLocation;
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(
userLocation.location.coordinate, 5000, 5000);
[mapView setRegion:region animated:NO];
}
その結果setRegion
、マップを呼び出した後、スクロールまたはズームできない空の青いボックスとして表示されるようになりました。しばらく海が表示されているのではないかと思ったのですが、地図自体がスクロールしないのでそうではないようです。同じ効果で、50mから25000mまでのすべてに距離を設定しようとしました。私が電話をしなければsetRegion
、ズームアウトされた世界地図が正常に表示され、ユーザーの場所が期待どおりに強調表示されます。
これに関するいくつかの関連する質問を参照した後、次の行も挿入してみました。
MKCoordinateRegion adjustedRegion = [mapView regionThatFits:region];
setRegion メッセージを次のように置き換えます。
[mapView setRegion:adjustedRegion animated:NO];
しかし、それは私と同じ結果になります。
私は何を間違っていますか?