0

我是 Objective-C 和 X-Code 的新手,基本上是在 iOS 中编程,所以这可能是一个非常简单的问题。无论如何,我正在尝试进行徽标测验,其中徽标和选项以随机顺序生成,即(徽标 1)--- 选择:第一次尝试的 ABCD。然后下次用户打开应用程序时,Logo 4 首先出现并选择 ADB C。(我希望这很清楚)。我设法随机显示徽标,但不知道如何对会修改徽标下方 4 个按钮的值的选项执行相同操作。

根据我的搜索,您使用以下内容:

 [btnA setTitle:@"answer" forState:UIControlStateNormal];

我的问题是,我也在考虑将选择放入一个数组中,所以我尝试了这样的方法:

[btnA setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];]

与我为徽标所做的类似,但我没有得到按钮的任何值。我在这里缺少什么吗?我也没有收到任何错误。这是我的代码的一部分,可以更好地解释我一直在尝试做的事情:

NSMutableArray *answerList = [[NSMutableArray alloc] initWithObjects:
                               @"AnswerA",
                               @"AnswerB",
                               @"AnswerC",
                               nil];
answerArray = answerList;
int i = arc4random() % [answerArray count];
[self.btn1 setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];
[self.btn2 setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];
[self.btn3 setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];
4

2 回答 2

1

只是Shuffle您的buttonTitleArrayMutableArray无需重复same logo quiz使用链接。

Shuffle logo quiz's choice使它与above link.

于 2013-01-18T09:42:56.563 回答
1

请参阅以下代码 - 它可以从 100 个集合中生成随机标题:

-(int)getRandomNumber:(int)fromVal to:(int)toVal {
    return (int)fromVal + arc4random() % (toVal-fromVal+1);
}

-(void) setButtonTitle
{
    NSArray * buttonTitleArray = [NSArray arrayWithObjects:@"title1", @"title2",... @"title100", nil};
    int x = [getRandomNumber :0 :100];
    NSString * title = [buttonTitleArray objectAtIndex:x];
    [button setTitle:title :forState:UIControlStateNormal];
}
于 2013-01-18T09:47:51.913 回答