我有一个NSArray在我的ViewDidLoad animalz = [NSArray arrayWithObjects:@"rabbit",@"deer",@"ox", @"horse", @"cow", nil];
这样宣布,我有一个UIView子类,我写了一个NSString并重新排列它。用户按下一个按钮,与按钮相关联的数字就是我需要的数组中的数字(例如,如果数字是三,那么我需要值“马”,但如果按钮是4,那么我需要“牛“);目前这些数字是以long int的形式出现的,我无法在nsarray中获得相应的值。我试着做:NSArray的值NSString
selectedani //this is the long int that represents the button
int indexani = [animalz objectAtIndex:selectedani];
NSString *anistr = [NSString stringWithFormat:@"%i",indexani];
[self rearrange:btistr];
这不会给我任何编译器警告或错误,但当我按下按钮,应用程序崩溃。我做错了什么,我该如何解决它?
崩溃时的调用堆栈是什么?调试器控制台中的输出是什么? –
这只是错误的:'int indexani = [animalz objectAtIndex:selectedani];'objectAtIndex将始终返回一个对象指针(或nil)。 –
@AdamRosenfield错误是:线程1:程序接收到的信号:EXC_BAD_ACCESS – user2510806