我还没有掌握下面这个结构的转移。我已经阅读了很多帖子,并且看到了其他人的相同未答复的帖子,但没有解决方案。
我将尝试简化问题,以使所有人更容易。
项目结构为:UITabbar 带有tab1 和tab2
Tab1 有一个导航控制器-->ViewController1
Tab2 有一个导航控制器 -->ViewController2
在 viewcontroller1 (tab1) 我有对象 X。
在 ViewCONtroller2 (tab2) 我想显示对象 X。
不用担心显示,这是最容易的部分。
问题:如何将对象 X 从 tab1 传递到 tab2。(一般模式是什么)。
如果你想用 prepareForSegue 来做,这样可以吗,还是有更好的方法。
如果使用prepareForSegue,你将segue拖到哪里?
标签栏控制器
OR***** 2. 到第二个 VC
希望这足够清楚。考虑到这一点,您将如何执行传输?
使用转场 1:
我试过这样做:
//(From View controller 1)
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"CreateObjectXToDisplayObjectX"])
ViewController2* vc2 = [[ViewController2 alloc] init];
UITabBarController* tbc = [segue destinationViewController];
vc2 = (ViewController2 *)[[tbc customizableViewControllers] objectAtIndex:1];
//Crash here with with [MainNavigationControllerDesign setViewController1Delegate:]: unrecognized selector sent to instance 0x1064ef70'
vc2.viewController1Delegate=self;
vc2.objectXAtViewController2 = _objectXFromViewController1;
}
}
那么,这个 Object X 传输是如何完成的呢?先感谢您