我有一个应用程序需要在出现提示时播放多个视频,但我希望视频是随机的而不是重复的。
我目前的计划是制作一个 NSMutableDictionary,其中键是视频的编号,值只是一个基本字符串,告诉我它是否已播放。然后,当要播放视频时,我会随机选择一个,看看它是否已经播放。像这样:
int randomNumber;
randomNumber = (arc4random() % 150) + 1;
if ([[videoDictionary valueForKey:[NSString stringWithFormat:@"%d", randomNumber]] isEqual:@"Played"])
{
// This video has been played before. Make another random number and try again
} else {
// This video has not been played before. Set the dictionary value to 'Played' and play the video
}
有一个更好的方法吗?对于超过 100 个视频,当其中 90% 已经播放时,这可能会开始变得有点愚蠢。