を困惑私はMapKitのiOS MapKit -
を使用して作ってるんだアプリでいくつかの助けを必要と私はdidUpdateUserLocationに苦しんだ: - それは、ランダムにアプリをクラッシュし。すべてのコードをコメントアウトすると完全に動作しますが、これは適切な状況ではありません。私はそれをすべて手伝ってきましたが、まだ本当の成功はありません。
はここに私のコードアプリは「失敗共同ORD」または「無効REG」ヒット決して
-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
NSLog(@"update loc");
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(userLocation.coordinate, 250.0, 250.0);//MKCoordinateRegionMake(userLocation.coordinate, mapView.region.span);
if (first) {
region = MKCoordinateRegionMakeWithDistance(userLocation.coordinate, 250.0, 250.0);
first = false;
}
if (!CLLocationCoordinate2DIsValid(userLocation.coordinate)) {
//do nothing, invalid regions
NSLog(@"co-ord fail");
} else if (region.span.latitudeDelta <= 0.0 || region.span.longitudeDelta <= 0.0) {
NSLog(@"invalid reg");
} else {
[mapView setRegion:region animated:NO];
}
}
だので、私は本当に私が値自身を設定するので、問題が何であるかを知りません。
通常、この問題は、マップのペン先が閉じられ、ビューが割り当て解除されている場合に発生します。
私は他のいくつかの提案を見ましたが、自分の仕事について自信を持っていません。理想的には私は
多くのおかげで、 ジェームズをズームレベルを維持するので、mapView.region.spanを使用したい
クラッシュ時の正確なエラーメッセージは何ですか? – Anna
申し訳ありませんが、これは見たことがありませんでした。 デバッグ時にクラッシュログに特定のエラーコードがありませんでした。クラッシュの説明は[MapKit mapView:didUpdateUserLocation:]になります。ダリルの答えの指針を使って問題を解決しました。お返事をありがとうございます! – jr19