0
私はたくさんの検索をしましたが、間違っていることが見つかりません。私はFirebaseに保存されている2つの数字を取得しようとしています(jsonファイルを使用しています)。そして、これらの数字の1つが緯度とその他の経度であるGoogleマップマーカーを作成します。NSInvalidArgumentExceptionの原因は何ですか?
__block int i =0;
while (i < 5) {
i++;
NSString *url = [NSString stringWithFormat:@"---myfirebaseurl---", i];
Firebase *ref = [[Firebase alloc] initWithUrl:url];
[ref observeEventType:FEventTypeChildAdded withBlock:^(FDataSnapshot *snapshot) {
if (snapshot.value == [NSNull null]){
i = 5;
}
if (snapshot.value != [NSNull null]){
NSString *latitudestring = snapshot.value[@"latitude"];
NSString *longitudestring = snapshot.value[@"longitude"];
long latitude = [latitudestring longLongValue];
long longitude = [longitudestring longLongValue];
NSLog(@"latitude: %li and longitude: %li", latitude, longitude);
CLLocationCoordinate2D position = CLLocationCoordinate2DMake(latitude, longitude);
GMSMarker *marker = [GMSMarker markerWithPosition:position];
marker.map = mapview;
marker.title = (@"%@", snapshot.value[@"nome"]);
marker.snippet = (@"%@", snapshot.value[@"endereco"]);
}
}
];
}
申し訳ありませんがコードはちょっと乱雑です。
このエラーメッセージが表示されます*** 'NSInvalidArgumentException'、理由によりキャッチされない例外にアプリを終了:「 - [NSTaggedPointerString objectForKeyedSubscript:]
とGoogleは、マーカーが全く作成されませんマッピングします。これについての洞察?
「NSDictionary」と思うオブジェクトは、実際には「NSString」です。ブレークポイントを使用して、問題の原因となっている行を正確に把握してください。 – Larme
Firebase構造のスニペットを投稿できますか?テキストとして、画像はありません。それはエラーの洞察を提供するかもしれません。 – Jay
緯度、経度、名前(nome)、住所(endereco)を持つ場所のリストです。だから、「場所」は「場所1」、「場所2」などに分かれています。そして、それぞれの場所には私が言ったことがあります。それだけです。私はそれが十分明確であるかどうかは分かりませんが、私はあなたが私のポイントを持っていると思います – user32367