1
J'ai un objet (TestSession) qui est conforme à NSCoder et quand je l'utilise:encodeWithCoder pas appelé
[NSKeyedArchiver archiveRootObject:testSession toFile:filename];
Il a:
@interface Session : NSObject <NSCoding> {
et a encodeWithCoder: et initWithCoder: fonctions. Les deux ne sont pas appelés. Qu'est-ce qui empêcherait cela?
- (void)encodeWithCoder:(NSCoder *)encoder
- (id)initWithCoder:(NSCoder *)decoder
Est-ce que ceux-ci doivent être déclarés dans l'en-tête?
Comme votre classe est conforme au protocole 'NSCoding', vous n'avez pas besoin de déclarer les méthodes dans votre en-tête. –
Je n'ai pas été. Alors qu'est-ce qui empêcherait encodeWithCoder: d'être appelé? –