Форум программистов, компьютерный форум, киберфорум
Наши страницы

Конвертация массива в NSData и обратно - Программирование iOS

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование iOS Подскажте код для замены выбранной записи в базе http://www.cyberforum.ru/ios-dev/thread891977.html
Помогите с Core Data Подскажте код для замены выбранной записи в базе. В приложение (на шаблоне "Master-Detail Application") после выбора ячейки в MasterViewController я перехожу в представление...
Программирование iOS Работа с UIAlertView Привет, форумчане! :) Я пишу приложение, которое представляет собой тесты на футбольную тематику (вы могли видеть подобное в контакте - приложение "карьера" и пр.). Так вот, когда пользователь... http://www.cyberforum.ru/ios-dev/thread891763.html
Программирование iOS Диплом Магистра
День добрый, Господа Я вот ломаю уже неделю себе голову - что можно высосать из objective-c/ios связки на дипломную работу, все никак не могу придумать. А то диплом уже в след. году, а конь еще не...
Простейшая программа! Программирование iOS
Здравствуйте! Мне очень нужно к середине-концу месяца сделать приложение на Iphone, начал делать вчера, установил Xcode, начал читать про Objective C и прочие уроки работы, но так и не смог,...
Программирование iOS Ошибка при использовании шаблона Master-Detail Application http://www.cyberforum.ru/ios-dev/thread889437.html
Помогите, пожалуйста, разобраться с кодом, перерыл весь интернет так и не понял почему у меня выбивает ошибку. Я хочу чтобы шаблон "Master-Detail Application" (с Core Data) разместился на одной из...
Программирование iOS Сколько часов займёт написание Добрый день! Подскажите пожалуйста примерно, из Вашего опыта - сколько ПРИМЕРНО времени занимает написание клиента под iOS - описание: клиент для онлайн заказа такси или суши - то есть окно выбора... подробнее

Показать сообщение отдельно
Noobass
0 / 0 / 0
Регистрация: 15.10.2012
Сообщений: 100

Конвертация массива в NSData и обратно - Программирование iOS

05.06.2013, 16:18. Просмотров 651. Ответов 3
Метки (Все метки)

Ребят, я тут с NSUserDefaults играюсь, и передо мной стоит задача. СОбрать спрайты со слоя, сохранить их в базе, и потом достать обратно. Спрайты я запаковываю в массив, конвертирую в NSData, и сохраняю :

C#
1
2
3
4
5
6
7
8
9
10
11
-(void) writeObjects:(CCLayer*) layer
{
    CCArray *objects = [CCArray arrayWithArray:[layer children]];
    int length = [objects count];
    
    NSData *objData = [NSData dataWithBytes:objects length:length];
    
    [[NSUserDefaults standardUserDefaults] setObject:objData forKey:@"cntObjects"];
    [[NSUserDefaults standardUserDefaults] synchronize];
    
}

Потом в другой функции я достаю свой объект, переконвертирую его в массив и выкладываю на слой. Делаю я это вот так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
-(CCLayer*) getObjects
{
    NSData *saveData;
    NSArray *objects;
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    saveData = [prefs objectForKey:@"cntObjects"];
    objects = [NSKeyedUnarchiver unarchiveObjectWithData:saveData];
    
 
    NSLog(@"%@",objects);
    
    CCLayer *layer = [CCLayer node];
    int length = [objects count];
    
    for(int i = 0 ; i < length ; i++)
    {
        [layer addChild:[objects objectAtIndex:i]];
    }
    return layer;
}
Проблема в том, что строка
C#
1
objects = [NSKeyedUnarchiver unarchiveObjectWithData:saveData];
не работает. Кто-нибудь, подскажите метод, которым я смогу успешно конвертировать NSData в массив???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru