-5

我有一个ViewController.swift 文件和两个视图控制器Main.Storyboard。当然有一个导航控制器。两个 View Controller 都有一个 Class: ViewController

这一切看起来像这样

我在 中输入值TextField,按 Enter,有数学计算,我在Label. Label但是,只有当TextFieldLabel位于同一个视图控制器上时,我才能看到结果。

单击下一步后,如何使其在第二个视图控制器上的标签中看到结果?

4

2 回答 2

0

在 ViewController B 中创建一个 var,并将 ViewController A 的结果分配给 viewcontroller B 的变量。就像在 ViewController B 中: var result = "" in ViewDidLoad()

label.text = result

在 ViewController A 中按下回车按钮

let vc = ViewControllerB(nibName: "ViewControllerB", bundle: nil)
vc.result = //your calculated result
self.navigationController?.pushViewController(vc, animated: true)
于 2018-05-11T09:52:16.773 回答
0

您需要将这些值传递给secondViewController。

为此,在您的firstViewController 中,您需要覆盖该方法override func prepare(for segue: UIStoryboardSegue, sender: Any?)并标识您将要与secondViewController 连接并设置值。

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if let viewController = segue.destinationViewController as? SecondViewController {
        viewController.calculatedValue = self.calculatedValue
    }
}

secondViewController 加载时,它已经设置了这些。

于 2018-05-11T09:50:38.943 回答