在Nav和Tab控制器之间快速传递数据



viewcontrollerB是导航控制器的根视图,同时也是选项卡视图控制器的第一个视图。如何通过导航和选项卡控制器将数据从初始视图a传递到视图B?感谢

情节提要

给你的选项卡栏控制器一个自定义类,例如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()

在您的主表视图控制器:

    override func viewWillAppear(animated: Bool) {
        let tabBarController = self.tabBarController as! MyTabBarController
        someVariable = tabBarController.someVariable
    print("the text is",someVariable)

}

最新更新