Ios 通过安全壳视图控制器传递数据的好方法是什么
我试图将对象实例从“初始”视图控制器传递到“item1”和“item2”。我希望避免子类化Ios 通过安全壳视图控制器传递数据的好方法是什么,ios,objective-c,swift,uistoryboard,Ios,Objective C,Swift,Uistoryboard,我试图将对象实例从“初始”视图控制器传递到“item1”和“item2”。我希望避免子类化UITabBarController,因为它会使安全壳视图控制器知道“太多” 除了子类化UITabBarController之外,使用故事板或代码还有什么好的方法可以做到这一点吗 我希望避免子类化UITabBarController,因为它会使安全壳视图控制器知道“太多” 您应该创建一个子类,并且您的子类应该为此实现一个特定的协议。嗯,包含VC的人只知道这个协议,这是合适的,因为它有直接的责任 我试图从“初
UITabBarController
,因为它会使安全壳视图控制器知道“太多”
除了子类化UITabBarController
之外,使用故事板或代码还有什么好的方法可以做到这一点吗
我希望避免子类化UITabBarController,因为它会使安全壳视图控制器知道“太多”
您应该创建一个子类,并且您的子类应该为此实现一个特定的协议。嗯,包含VC的人只知道这个协议,这是合适的,因为它有直接的责任
我试图从“初始”视图控制器传递对象的实例
至“项目1”和“项目2”。我希望避免子类化
UITabBarController,因为它将使安全壳视图控制器知道
“太多了”
这里的问题是,您的序列的destinationViewController
是UITabBarController
,而不是项目1或项目2。如果您不想将其子类化,这会使您的案例变得非常困难,因为您无法在初始VC的实例和这两个项目之间直接通信
我的建议是使用子类,在这种情况下,这是正确的方法(您可能希望添加一个指定通信接口的协议)
其他选择包括:
NSNotification
并将实例作为userInfo
传递(虽然不是很优雅,但可能是isse的最快解决方案)NSUserDefaults
,并将其加载到项目1和项目2中(可能会有大量开销)您可以使用singleton类,在该类中保存数据,并在其他类中访问它。@YogeshSuthar,@aBilal抱歉,我所说的数据是对象的实例。因此
NSUserDefaults
和singleton将不起作用。我编辑了我的问题。