Как конвертировать 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
метод, который вы использовали при создании массива.