奇妙な iPhone シミュレーターの問題に遭遇しました。MKMapView を使用して地図を表示するアプリケーションを作成しました。このマップを中央に配置したいので、次のコードを使用しました。
- (void)viewDidLoad {
[super viewDidLoad];
CLLocationCoordinate2D location;
location.latitude = 47.379022;
location.longitude = 8.541001;
MKCoordinateSpan span;
span.latitudeDelta = 0.05;
span.longitudeDelta = 0.05;
MKCoordinateRegion region;
region.center = location;
region.span = span;
[self.mapView setMapType:MKMapTypeStandard];
[self.mapView setRegion:region animated:YES];
}
このコードは、新しい「HelloMap」Xcode プロジェクトで問題なく動作し、チューリッヒを地図の中心にして、本来あるべきことを行います。
しかし、別のプロジェクトでまったく同じコードを使用すると、マップは南極に近い場所に配置されます。「製品」->「クリーン」を使用して、ビルド環境をクリーンアップしようとしましたが、変更はありません。
また、エミュレートされた iPhone からアプリを削除しても、変更はありません。また、ターミナルを使用して、対応するフォルダーから残りのアプリを確認して削除しました。
Xcode プロジェクトに加えられた変更が (常に) iPhone シミュレーターに転送されていないようです。たとえば、上記のソース コードがコメント アウトされている場合でも、MKMapView は読み込まれます...
ここでアイデアが不足しています...何か意見はありますか?
[編集]
「iOS-Simulator」->「Inhalte und Einstellungen zurücksetzen」に移動してシミュレーター全体をリセットすると、一度だけ機能しました(!!)...
[編集]
これはランタイムの問題のようです。上記のコードを "- (void)viewDidAppear:(BOOL)animated" に入れると、正しく動作するようになります - 少なくともほとんど。ユーザーは、「デフォルトの場所」から私の座標へのアニメーション化されたフライを見るようになりました。
ビューがロードされたときにマップが正しい位置にあるようにするには、どこにコードを配置する必要がありますか?