Essayez d'insérer la non-valeur de la propriété Objective C
Salut je suis en train de créer un fourates des listes à partir d'un des restaurants de l'Objet, ma demande a une liste de restaurants différents, l envie, la capacité pour les utilisateurs d'ajouter des favourate restaurants, et ce code ne fonctionne pas
- (IBAction)toggleFav:(id)sender {
Restaurant *resto = [self restaure];
NSMutableDictionary *dic = [[NSMutableDictionary alloc] init];
[dic setObject:resto.price forKey:@"restoPrice"];
[dic setObject:resto.restaurantId forKey:@"restaurantId"];
[dic setObject:resto.restoAbout forKey:@"restoAbout"];
[dic setObject:resto.restoAddress forKey:@"restoAddress"];
[dic setObject:resto.restoBeverages forKey:@"restoBeverages"];
[dic setObject:resto.restoCategory forKey:@"restoCategory"];
[dic setObject:resto.restoEmail forKey:@"restoEmail"];
[dic setObject:resto.restoLogo forKey:@"restoLogo"];
[dic setObject:resto.restoName forKey:@"restoName"];
[dic setObject:resto.restoPhone forKey:@"restoPhone"];
[dic setObject:resto.restoCity forKey:@"restoCity"];
NSArray *dicArray = [dic allKeys];
if([sender isSelected]){
//...
[sender setSelected:NO];
NSMutableArray *array = [[[NSUserDefaults standardUserDefaults] objectForKey:@"restoName"] mutableCopy];
[array removeObject:dicArray];
[[NSUserDefaults standardUserDefaults] setObject:array forKey:@"restoName"];
} else {
//...
[sender setSelected:YES];
NSMutableArray *array = [[[NSUserDefaults standardUserDefaults] objectForKey:@"restoName"] mutableCopy];
[array addObject:dicArray];
[[NSUserDefaults standardUserDefaults] setObject:array forKey:@"restoName"];
[[NSUserDefaults standardUserDefaults] synchronize];
//NSLog(@"%@",[[NSUserDefaults standardUserDefaults] stringForKey:@"restoName"]);
}
}
' de la classe '__NSCFArray'. Notez que les dictionnaires et les tableaux dans les listes de propriété doit également contenir que des valeurs de propriété.
- Consultez votre dictionnaire est-il des valeurs null ou pas?
Vous devez vous connecter pour publier un commentaire.
Si vous ne voulez pas à vous soucier d'assurer tous vos dictionnaire valeurs sont la propriété de la liste de types, alors vous pouvez simplement convertir le dictionnaire en NSData,
Et de revenir dans un dictionnaire de sandbox:
Espère que cela aide quelqu'un. 😀
REMARQUE SUPPLÉMENTAIRE: Si vous obtenez une mutable dictionnaire, ou mutable tableau, alors n'oubliez pas d'utiliser "mutableCopy" la méthode. Sinon, vous ne pouvez pas ajouter ou supprimer des objets à partir de votre extrait du dictionnaire/matrice. Par exemple:
Ou
Vous ne pouvez stocker des biens de la liste de types (tableau, des données, chaîne de caractères, nombre, date, dictionnaire) ou des url dans NSUserDefaults. Vous aurez besoin de convertir votre modèle objet de celles-ci.