2010-09-20 3 views
1

У меня есть объект (testSession), что соответствует требованиям к NSCoder и когда я использую:encodeWithCoder Не вызывался

[NSKeyedArchiver archiveRootObject:testSession toFile:filename]; 

Она:

@interface Session : NSObject <NSCoding> { 

и имеет encodeWithCoder: и initWithCoder: функции. Также не вызываются. Что помешало бы этому?

- (void)encodeWithCoder:(NSCoder *)encoder 
- (id)initWithCoder:(NSCoder *)decoder 

Должны ли они быть объявлены в заголовке?

+0

Поскольку ваш класс соответствует протоколу NSCoding, вам не нужно объявлять методы в своем заголовке. –

+0

Я не был. Итак, что бы предотвратить encodeWithCoder: от вызова? –

ответ

1

WHOOPS! Я забыл сохранить свой объект testSession после его создания. Я немного ржавый: P

Смежные вопросы