0

我想在不同的 10 个标签中同时显示数组对象。它们每次都应该随机排列。我怎样才能做到这一点?

我已经完成了随机部分:

srandom(time(NULL));
NSUInteger arr = [myarray count];
for (NSUInteger i = 0; i < arr; ++i) {
    int nElements = arr - i;
    int n = (random() % nElements) + i;
    [myarray exchangeObjectAtIndex: i withObjectAtIndex:n];
}

但是当我想用下面的代码对 10 个不同的标签,数组对象重复,并且 2 或 3 个不同的标签可以有相同的值。我怎样才能让它们与众不同?

myLabel.text = [NSString stringWithFormat:@"%@", [[arr objectAtIndex:(random()%9)+1]intValue];

谢谢

4

1 回答 1

0

当您使用 random() 方法将对象随机化为数组时,无需使用 random() 来显示标签中的数据,因为在 randome 方法中,一些返回的数据可以重复返回,因此只需使用 random() 即可随机化数据并使用简单的 for 循环在标签中连续显示它们。

于 2012-07-05T11:35:14.693 回答