Как конвертировать NSArray в NSData... или что-то

Я довольно смущен, чтобы спросить это, но у меня есть ограничение по времени. в основном, мне нужно получить массив, который может содержать целые числа, а затем эти целые числа могут быть использованы для построения точки на изображении.

Я пытаюсь создать программу, в которой случайные объекты движутся по экрану по определенным путям, но наугад. Пока это мой код:

enemyPaths = [NSMutableArray array];//5 items (0-4) [enemyPaths addObject:[NSNumber numberWithInt:48]]; [enemyPaths addObject:[NSNumber numberWithInt:93]]; [enemyPaths addObject:[NSNumber numberWithInt:138]]; [enemyPaths addObject:[NSNumber numberWithInt:183]]; [enemyPaths addObject:[NSNumber numberWithInt:228]]; [enemyPaths retain];

Это Массив. Что я хочу сделать, так это уметь создавать генератор случайных чисел и иметь точку х объекта, использующую любое значение из массива в качестве отправной точки:

double i = (arc4random() % 5);


NSData *data = [NSKeyedArchiver archivedDataWithRootObject:[enemyPaths objectAtIndex: i]];
 image.x = (int)data;

Я немного растерялся относительно того, что делать, так как мои знания о преобразовании NSarray в NSdata не очень обширны, и это довольно запутанно. Буду признателен за любую помощь, которую вы можете оказать.

Важное примечание: я использую инфраструктуру Sparrow с этой программой, чтобы вы знали.

1 ответ

Решение

Почему вы пытаетесь архивировать массив в первую очередь? Я думаю, что вы хотите сделать это:

image.x = [[enemyPaths objectAtIndex:i] intValue];

Вот intValue это метод NSNumber учебный класс; это обратная сторона numberWithInt метод, который вы использовали при создании массива.

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