开发者社区 问答 正文

报错:'NSNumber' declares the selector initwithInt'

做了一个不同类别的测试应用。代码运行后报错: No visible @interfacefor 'NSNumber' declares the selector initwithInt.'

代码:

-(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;
        }
    }
}

展开
收起
爵霸 2016-03-17 11:38:55 2002 分享 版权
1 条回答
写回答
取消 提交回答
  • 没有这个initwithInt:,有一个initWithInt:, Objective-C 区分大小写

    代码中的 [ 放错了
    `[questionArray addObject:[NSNumber alloc] initwithInt:i]];
    `

    应该是:
    `[questionArray addObject:[[NSNumber alloc] initWithInt:i]];
    `

    最好改为:
    `[questionArray addObject:[NSNumber numberWithInt:i]];
    `

    2019-07-17 19:04:59
    赞同 展开评论
问答地址: