Я столкнулся с некоторыми трудностями при получении свойств объекта типа "id". Вот как я к нему обращаюсь:
Я делаю следующее, чтобы назначить объект объекту типа id из универсального массива, содержащего различные типы объектов, и вызываю метод «saveata», которому я передаю объект, а также его тип:
for(id objInArray in genericArray){
NSString *objType = [objInArray valueForKey:@"type"];
[objInArray retain];
[self saveData:objInArray :objType];
}
В методе сохраненных данных я пишу следующий код для получения свойств объекта id:
-(void)saveData:(id)object :(NSString *)objectType
{
self.managedObjectContext = appDelegate.managedObjectContext;
if([objectType isEqualToString:@"event"])
{
Event * newEvent = (Event *)[NSEntityDescription
insertNewObjectForEntityForName:@"Event"
inManagedObjectContext:self.managedObjectContext];
[newEvent setEletitle:[NSString stringWithFormat:@"%@", [object valueForKey:@"eletitle"]]];
[self saveAction];
}
Но объект «объект», содержащий значения, не может присвоить их объекту newEvent.
Я также попытался получить это значение в строковом объекте, например так:
NSString *eletit = [object valueForKey:@"eletitle"];
[eletit retain];
Но eletit также недействителен в конце этой транзакции.
Кто-нибудь может помочь? Это действительно срочно.
Спасибо заранее.