В моем приложении у меня есть два контроллера просмотра - UIViewController и UITableViewController. Теперь в моей реализации TableViewController мне нужно получить некоторые данные из UIViewController (массив свойств). Массив, который он синтезировал, поэтому то, что я на самом деле делаю, это то, что в реализации UITableViewController я создаю экземпляр моего UIViewController, массив и просто устанавливаю массив в [myUIViewController getTheArray]. Я знаю, что это не сработает, это просто поиск нуль, но в моем VC на самом деле полно данных. Я застрял в этой точке, я мог бы попробовать с помощью метода performSegueWithIdentifier, но эти представления напрямую не связаны через segue друг с другом. Они встроены в представление панели вкладок, и мой ViewController не имеет абсолютно никакого отношения к моему TableViewController. Любая идея о том, как правильно это сделать? Спасибо.Идентификация экземпляра ViewController в другом ViewController
@interface classA : UIViewController
@property (strong, nonatomic) Playlist* playlist;
-(Playlist*) getTheCurrentPlaylist;
@end
@implementation classA
@synthesize playlist = _playlist;
// add data to _playlist
-(Playlist*) getTheCurrentPlaylist{
return _playlist;
}
@end
сейчас, ClassB
@interface classB : UITableViewController
@property (strong ,nonatomic) Playlist* playlistTab;
@end
@implementation classB
@synthesize playlistTab = _playlistTab;
-(void) viewDidLoad{
[super viewDidLoad];
classA *cla = [[classA alloc] init];
// what has to be done here?
_playlistTab = [cla getTheCurrentPlaylist];
}
Я надеюсь, что это проясняет.
Хотел бы я понять, что вы пытались сказать. Можете ли вы попытаться сделать это более понятным, возможно, с небольшими фрагментами кода? –
Код в данный момент находится в главном сообщении. – nemesis
Что вы сделали, чтобы отладить это? Вы установили точки останова и проверили, что метод вызван? Вы подтвердили, что в точке останова, когда он вызывается, возвращаемое значение не равно нулю? – Jim