我正在使用 https://github.com/xmartlabs/XLPagerTabStrip我有 3 个 child ...我想将值(value)从 child 传递给 child ..
我能够像这样将值从 parent 传递给第一个 child :
let parentVC = self.parent as! ParentViewController
mobile = parentVC.mobile
但现在我想将它从 child 1 传递给 child 2 .. 尝试了上面的方法,但我得到了 mobile is nil
父 View 中的 mobile 声明如下:
var mobile = ""
如何在 child 之间传递数据?
override func viewControllers(for pagerTabStripController: PagerTabStripViewController) -> [UIViewController] {
let child1 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "cominfo")
let child2 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "comedu")
let child3 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "comcv")
return [child1,child2,child3]
}
最佳答案
override func viewControllers(for pagerTabStripController: PagerTabStripViewController) -> [UIViewController] {
let child1 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "cominfo") as! yourChildClassname
child1.mobile = self.mobile
let child2 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "comedu")as! yourChildClassname
child2.mobile = self.mobile
let child3 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "comcv") as! yourChildClassname
child3.mobile = self.mobile
return [child1,child2,child3]
}
关于ios - 使用 XLPagerTabStrip 在 child 之间传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51532550/