J'ai un attribut qui est décrit comme Int16. Il est décrit dans le fichier .h comme NSNumber. Peu importe comment je le formate, je n'arrive pas à obtenir la valeur valide de 12 ou 24 stockée dans UserDefaults. Qu'est-ce que je fais mal? ou, mieux encore, comment puis-je résoudre ce problème aHourFormat est le même que timeFormat?Impossible de définir 'int' dans CoreData comme numéro NS
Voici le code:
updateData.aHourFormat = [NSNumber numberWithInt:[preferencesDict objectForKey:@"timeFormat"]];
NSLog(@"\ntimeFormat: %d\naHourFormat: %d",[[preferencesDict objectForKey:@"timeFormat"]intValue],[updateData.aHourFormat intValue]);
Ce qui NSLog affiche dans la console de débogage:
timeFormat: 12 aHourFormat: -30496
et
timeFormat: 24 aHourFormat: 14000
Telle est la définition de aHourFormat:
@property (nonatomic, retain) NSNumber *aHourFormat;
'Int16' est 'court',' Int32' est' int' – vadian