J'ai un NSDictionary contenant certains objets: un NSSet de UITouches, un UIEvent et un NSString.Erreur lors du codage de UITouchesEvent comme NSData
Lorsque j'essaie d'encoder le dictionnaire en NSData, la chaîne code correctement. J'ai eu une erreur avec les UITouches étant codés, mais j'ai trouvé un moyen d'étendre la classe avec du code afin qu'un UITouch puisse être encodé. Cependant, je ne peux toujours pas encoder le UIEvent (qui est en fait un UITouchesEvent). Comment puis-je étendre UIEvent ou UIInternalEvent pour les rendre encodables en NSData?
Méthodes J'utilise pour le codage/décodage:
-(NSString *)stringFromDictionary:(NSDictionary *)dict{
NSMutableData *data = [[NSMutableData alloc] init];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:dict forKey:@"dictKey"];
[archiver finishEncoding];
return [Base64 encode:data];
}
-(NSDictionary *)dictionaryFromString:(NSString *)string{
NSData *data = [[NSMutableData alloc] initWithData:[Base64 decode:string]];
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
NSDictionary *myDictionary = [unarchiver decodeObjectForKey:@"dictKey"];
[unarchiver finishDecoding];
return myDictionary;
}
erreur que je reçois:
-[UITouchesEvent encodeWithCoder:]: unrecognized selector sent to instance
S'il vous plaît laissez-moi savoir si je manque une information importante en ce qui concerne le débogage. Merci!
Merci, mais comme je l'ai dit, j'ai déjà codé UITouch. J'essaie de comprendre comment faire avec UITouchesEvent. – rsmoz
Mon mauvais, alors bien sûr vous devrez faire cela pour la classe 'UITouchesEvent'. Mais je ne pense pas que ce sera facile. – Pascal