我正在制作一个包含多个不同类别的测验应用程序。我还有一些事情要做,但我遇到了标题中的错误。这是我的代码到目前为止的样子
-(IBAction)Category1:(id)sender{
Category1.hidden = YES;
Category2.hidden = YES;
Question.hidden = NO;
Answer1.hidden = NO;
Answer2.hidden = NO;
Answer3.hidden = NO;
Answer4.hidden = NO;
Right1.hidden = YES;
Right2.hidden = YES;
Right3.hidden = YES;
Right4.hidden = YES;
Wrong1.hidden = YES;
Wrong2.hidden = YES;
Wrong3.hidden = YES;
Wrong4.hidden = YES;
SelectCategory.hidden = YES;
NSMutableArray *questionArray = [[NSMUTABLEArray alloc] init];
for (int i = 1; i < 101; i++) {
[questionArray addObject:[NSNumber alloc] initwithInt:i]]; // Here is where the error occurs
}
for (int i = 0; i < 100; i++) {
int randomIndex = arc4random() % [questionArray count];
int Category1Question = [[questionArray objectAtIndex:randomIndex] intValue];
[questionArray removeObjectAtIndex:randomIndex];
switch (Category1Question) {
case 0:
Question.text = [NSString stringWithFormat:@"Question here"];
Right1.hidden = NO;
Wrong2.hidden = NO;
Wrong3.hidden = NO;
Wrong4.hidden = NO;
Answer1.text = [NSString stringWithFormat:@"Correct answer here"];
Answer2.text = [NSString stringWithFormat:@"Wrong answer here"];
Answer3.text = [NSString stringWithFormat:@"Wrong answer here"];
Answer4.text = [NSString stringWithFormat:@"Wrong answer here"];
break;
case 1:
// etc etc all the way to case 99
default:
break;
}
}
}
我完全想不通。如果有人可以帮助并向我解释,我将非常感激。谢谢
最佳答案
没有initwithInt:
但是有initWithInt:
,Objective-C区分大小写。
而你的 [
放错了:
[questionArray addObject:[NSNumber alloc] initwithInt:i]];
应该是:
[questionArray addObject:[[NSNumber alloc] initWithInt:i]];
或者更好:
[questionArray addObject:[NSNumber numberWithInt:i]];
关于iphone - 没有可见的@interfacefor 'NSNumber' 声明选择器 initwithInt。错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18083560/