Mam problem z utworzeniem NSDictionaries
w pętli i dodaniu go do NSMutableArray
.EXC_BAD_ACCESS podczas próby utworzenia nowego NSDictionary
Zasadniczo po prostu chcę zmienić nazwy klawiszy, ale ponieważ nie mogłem znaleźć funkcję, że poszedłem do następującego kodu:
- (NSMutableArray *)getCategoriesForChannel:(int)channelId {
NSDictionary *data = [self call:@"get_categories.ashx"];
NSArray *categories = [data objectForKey:@"categories"];
NSMutableArray *returnArray = [NSMutableArray
arrayWithCapacity:[categories count]];
for(NSDictionary *category in categories) {
[returnArray addObject:[NSDictionary dictionaryWithObjectsAndKeys:
[category objectForKey:@"Channel_id"], @"id",
[category objectForKey:@"Channel_name"], "@name", nil]];
}
return returnArray;
}
Ale aplikacja zawsze kończy pracę, gdy osiągnie metodę addObject:
i rzuca EXC_BAD_ACCESS
. Myślę, że ma to coś wspólnego z zarządzaniem pamięcią, ale ponieważ tak naprawdę nie mam tła C, nie mam pojęcia, jak rozwiązać ten problem. Czy ktoś może wskazać mi właściwy kierunek? Z góry dziękuję!
Dziękuję, proszę pana, to był problem! –
Czasami wystarczy inny zestaw oczu! Uratowało to mnie to, na co jestem pewna, że były to godziny frustracji. Dzięki. – MikeCocoa
Arg, właśnie popełniłem ten sam błąd ;-(niewiarygodne, nie ma ostrzeżenia kompilacji ... –