viewcontrollerB是导航控制器的根视图和标签视图控制器的第一个视图。如何将数据从初始viewA传递到导航和制表符控制器到ViewB?感谢
答案 0 :(得分:0)
为标签栏控制器提供一个自定义类,例如MyTabBarController,并在那里声明一个变量,该变量将从登录视图控制器中的文本字段接收文本(通过prepareForSegue)。然后,您将能够从主视图控制器访问该变量。
在登录视图控制器中:
@IBAction func ButtonPressed(sender: AnyObject) {
performSegueWithIdentifier("toTabBarController", sender: nil)
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if let tabBarController = segue.destinationViewController as? MyTabBarController{
tabBarController.someVariable = someTextField.text!
}
}
标签栏控制器中的:
var someVariable = String()
在你家的tableview控制器中:
override func viewWillAppear(animated: Bool) {
let tabBarController = self.tabBarController as! MyTabBarController
someVariable = tabBarController.someVariable
print("the text is",someVariable)
}