来自数组的uibutton文本的随机值

时间:2012-10-19 11:30:42

标签: iphone ios nsmutablearray

在我的应用程序中,我有4个按钮。在每次单击时,我想显示数组中的UIButton标题混洗值。 我试过这个What's the Best Way to Shuffle an NSMutableArray? 但它不起作用。

2 个答案:

答案 0 :(得分:1)

你将得到你的数组索引,然后使用该索引来选择值。

 int rndIndex = arc4random()%[yourArray count];

 [yourArray objectAtIndex:rndIndex];

答案 1 :(得分:0)

你创建一个数组:

在标题(.h)文件中

NSArray *words;

稍微低于那个

- (IBAction)aButtonWasClicked:(id)sender;

在您的代码文件(.m)中,例如viewDidLoad

words = [[NSArray arrayWithObjects:@"One", @"Two", @"Three", @"Four", nil] retain];

(在ios 6中你可能会这样做

words = @[@"One", @"Two", @"Three", @"Four"];

然后你这样做:

- (IBAction)aButtonWasClicked:(id)sender {
    int value = arv4random() % ([words count] -1);
    UIButton *mybutton = (UIButton *)sender;
    [mybbutton setTitle:[words objectAtIndex:value] forState:UIControlStateNormal];
}

请记住将所有4个按钮挂钩到同一个动作。

这就是它的全部内容。您可以轻松添加一个功能,以确保没有按钮具有相同的标题等等。