iphone Development - выбрать уникальное изображение из проблемы с массивом, синтаксическая справка - PullRequest
0 голосов
/ 06 декабря 2009

Код:

//pick one filename
int numFileNames = [imageArray count];
int chosen = arc4random() % numFileNames;
NSString *oneFilename = [imageArray objectAtIndex: chosen];

спасибо !!

Ответы [ 2 ]

0 голосов
/ 24 июля 2015

Вопрос не указывает на проблему, он просто упоминает, что разработчик хочет сохранить уникальное имя изображения в массиве, поэтому можно выполнить кодирование:

NSMutableArray * arrImages = [NSMutableArray new];

for (int i=0; i<2; i++) {

    NSString *imgName = [NSString stringWithFormat:@"imageBall%d",i];

    //Here we can check whether image is already added or not.
    if (![arrImages contains Object:imgName]) {
        [arrImages addObject:imgName];
    }
}

int choosen = arc4random() % (int)arrImages.count;

NSString *imageFileName = arrImages[choosen];
0 голосов
/ 06 декабря 2009

В вашем NSMutableArray есть одна ошибка:

Вы должны сначала инициализировать его.

NSMutableArray *imageArray = [[NSMutableArray alloc] init];

;)

и вот предложение, если вам не обязательно нужна помощь создателя интерфейса, вы можете рассмотреть cocos2d. Вещи, которые вы хотели сделать, могут быть легко сделаны в этом.

- как для шага 3. Сделайте случайный выбор, используя Rand (), сделайте цикл, чтобы проверить, добавлено ли уже выбранное изображение в массив (этот массив для выбранных изображений), если оно находится в массиве, снова случайным образом, если нет, то добавьте в выбранный массив и выполните ball1.image = [UIImage imageNamed: [imageArray objectatindex: randomNum]];

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...