objective c - EXC_BAD_ACCESS con NSDictionary
objective-c xcode (2)
Estoy tratando de agregar objetos que están en una matriz a un NSDictionary
función de su posición dentro de NSArray
, pero la aplicación falla tan pronto como se asigna el NSDictionary
. ¿Alguna idea de por qué?
NSString *venue_title = [venues objectAtIndex:[actionSheet tag]];
NSString *venue_address = [venues_full_address objectAtIndex:[actionSheet tag]];
NSString *venue_lat = [venues_lat objectAtIndex:[actionSheet tag]];
NSString *venue_lng = [venues_lng objectAtIndex:[actionSheet tag]];
NSLog(@"%@, %@, %@, %@", venue_title, venue_address, venue_lat, venue_lng);
NSDictionary *venue_details_dict = [[NSDictionary alloc] initWithObjects:[NSArray arrayWithObjects:venue_title, venue_address, venue_lat, venue_lng, nil] forKeys:[NSArray arrayWithObjects:@"name", @"address", @"lat", "lng", nil]];
Veo todos los valores correctos cuando NSLogge los objetos, pero NSDictionary hace que la aplicación se cuelgue con un error EXC_BAD_ACCESS
. Tengo NSZombies
habilitado, pero no se muestra nada cuando se bloquea como se mostraría regularmente. ¿Alguna idea sobre lo que está pasando aquí? ¡Gracias por adelantado!
NSDictionary *venue_details_dict = [[NSDictionary alloc] initWithObjects:
[NSArray arrayWithObjects:venue_title, venue_address, venue_lat, venue_lng, nil]
forKeys:
[NSArray arrayWithObjects:@"name", @"address", @"lat", "lng", nil]];
Olvidó el @
en "lng"
. Auge.
Para una mayor claridad que hace que los errores como este sean más fáciles de ver, intente:
NSDictionary *venue_details_dict = [NSDictionary dictionaryWithObjectsAndKeys:
venue_title, @"name",
venue_address, @"address",
venue_lat, @"lat",
venue_lng, @"lng",
nil];