1

マップを 2 つの座標の中心に広げようとしています。以前のバージョンの iOS では問題なく動作していましたが、突然、次のエラー メッセージが表示されます。

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Invalid Region <center:nan, nan span:nan, nan>' 

何が間違っているかについてのアイデアはありますか?

        CLLocationCoordinate2D savedCoordinate;
        savedCoordinate.latitude = [userDef doubleForKey:@"savedCoordinate-latitude"];
        savedCoordinate.longitude = [userDef doubleForKey:@"savedCoordinate-longitude"];

        savedPosition = savedCoordinate;

        CLLocationDistance visibleDistance = 100;
        MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(savedCoordinate, visibleDistance, visibleDistance);
        MKCoordinateRegion adjustedRegion = [mapView regionThatFits:region];
        [mapView setRegion:adjustedRegion animated:NO];
4

1 に答える 1

2

エラーメッセージは問題を示しています。指定している座標に、通常の数値ではなくnan (「数値ではない」)が含まれています。

あなたがあなたの座標部分を記録するならば、あなたは詳細を見つけることができるはずです。savedCoordinate.latitude特に、とを見ていたと思いますsavedCoordinate.longitude。おそらく、数値ではなく文字列をユーザーのデフォルトに格納しているのでしょうか。キーがユーザーのデフォルトに存在しない場合、これらはnanではなく0である必要があります。

参照:

于 2012-11-10T06:31:02.527 に答える