У меня есть 2 объекта, которые вызывают плейлисты и песни. Сначала я передаю выбранный список воспроизведения в мой одноточечного, используя этот код:Создайте связь между двумя объектами в разных ViewControllers
optionsSingle = [rowNumber singleObj];
optionsSingle.selectedRowNow = [devices objectAtIndex:indexPath.row];
optionsSingle.selectedRowNow
будет возвращать что-то вроде этого, в зависимости от имени:
0xb922600 <x-coredata://053340C7-00A3-47EA-A213-4A9B6164504F/Playlists/p6> ; data: {
playlistName = playlist1;
songs = "<relationship fault: 0xb961480 'songs'>";
})
Проблема в том, когда я пытаюсь использовать этот объект списка воспроизведения в addSongsViewController
, похоже, не работает.
Я пытаюсь включить что-то вроде этого в метод songsDone
, но он не позволит мне использовать addSongsObject
. Я включил 2 объекта в файл .m. optionsSingle.selectedRowNumber
объявлен как тип «playlist». Почему я не могу использовать этот метод для моего объекта списка воспроизведения, который был передан?
[optionsSingle.selectedRowNumber addSongsObject:newManagedObject2]
songsDone Method.
-(IBAction)songsDone:(id)sender{
AppDelegate *appDelegate =
[[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context =
[appDelegate managedObjectContext];
Songs *newManagedObject2 = (Songs*)[NSEntityDescription insertNewObjectForEntityForName:@"Songs" inManagedObjectContext:context];
NSDate *today= [NSDate date];
[newManagedObject2 setValue:video.author forKey:@"author"];
[newManagedObject2 setValue:video.videoid forKey:@"link"];
[newManagedObject2 setValue:video.title forKey:@"songName"];
[newManagedObject2 setValue:today forKey:@"created"];
NSError *error = nil;
if (![_managedObjectContext save:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
Если 'selectedRowNumber' содержит объект' Playlists', вы должны объявить его как таковой, а не как 'NSObject'. - В противном случае компилятор не может «знать», что отвечает на «addSongsObject:». –
Как это объявить? – user3195388
Заменить 'NSObject' на' Playlists' в определении свойства 'selectedRowNumber'. –