J'ai un selectedActivity d'objet défini comme suit:IOS: Erreur NSKnownKeysDictionary1
@property (strong, nonatomic) Activities *selectedActivity;
Au point où je dois travailler avec elle billots comme:
{
actname = "Running";
aid = 23;
}
L'objet Activités est un objet NSManaged et son fichier .h ressemble à ceci.
@interface Activities : NSManagedObject
@property (nonatomic, retain) NSString * actname;
@property (nonatomic, retain) NSNumber * aid;
@end
Je suis en train de placer une des propriétés de l'objet dans une variable pour les utiliser avec les éléments suivants:
NSNumber *aid = _selectedActivity.aid;
Cependant, la ligne ci-dessus donne le message d'erreur suivant:
[NSKnownKeysDictionary1 aid]: unrecognized selector sent to instance 0x147842fb0
Quelqu'un peut-il expliquer cette erreur et comment la réparer?
Merci pour vos suggestions.
Mise à jour: cadre de l'activité sélectionnée
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
_selectedActivity =([_activities objectAtIndex:row]);
NSLog(@"selectedActivity in pickerview%@",_selectedActivity);
}
//activities in .h file
@property (strong, nonatomic) NSArray *activities;
//setting of activities
self.activities= [self getActivities];
//method that gets activities
- (id) getActivities{
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Activities"];
NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"created" ascending:NO];
[fetchRequest setSortDescriptors:@[sort]];
NSError *error = nil;
self.managedObjectContext = [Model sharedInstance].managedObjectContext;
NSArray *results = [self.managedObjectContext executeFetchRequest:fetchRequest
error:&error];
NSMutableArray *mutableresults = [results mutableCopy];
[mutableresults removeObjectIdenticalTo:[NSNull null]];
return mutableresults;
}
Afficher le code où vous attribuez une valeur à 'selectedActivity'. Apparemment c'est un dictionnaire et pas une instance de 'Activités ' – dan