Получение случайного объекта из NSSet не работает

Почему я не получаю случайное значение из списка?

Если я установил цвет вручную, как [UIColor redColor] просто отлично работает

- (id) init
 {
    self.color = [self randomColor]; //This doesn't work
    self.color = [UIColor someColor]; //This works
 }

- (UIColor *) randomColor {
    NSSet *colors = [NSSet setWithObjects:[UIColor redColor], [UIColor yellowColor], [UIColor orangeColor], nil];
    return [colors anyObject];
}

1 ответ

Решение

-anyObject не возвращает случайный объект. Просто сложно предсказать, какой объект он вернет (скорее всего, он будет либо самым эффективным, либо самым простым для внутренней реализации).

Другие вопросы по тегам