我正在尝试创建一个记忆游戏,我不知道如何使用数组中的图片随机填充我的单元格。我刚刚开始主要针对iOS的Xcode编程,我已经在Stack Overflow上搜索了几天,但我似乎无法找到答案。或者我不明白你的专业人士说过和解释过什么。
有人可以请赐教吗?
答案 0 :(得分:0)
此代码将采用包含图片的NSArray,并以随机顺序生成包含图片的新数组。然后,您可以保存新阵列并将其用于表格的数据源中。
NSArray *pictures; //Array containing all of the pictures to display
srandomdev();
NSArray *randomPictures = [pictures sortedArrayUsingComparator:(NSComparisonResult)^(id obj1, id obj2) {
long val = random();
if(val & 1) return NSOrderedAscending;
return NSOrderedSame; //or NSOrderedDescending
}];
答案 1 :(得分:0)
如果你总是拥有相同的元素集,并且你只想将它们按随机顺序排列,那么我建议你阅读Fisher-Yates shuffling算法(http://en.wikipedia.org/wiki /费希尔 - Yates_shuffle)。这与您在纸牌游戏中随机化一副牌或您想要置换的任何其他有限集的过程相同。