如何在ViewController中存储一个数字并在另一个ViewController上重用它?
问题描述:
我目前正在开发,其中用户在一个UIText字段中输入数的应用程序,我想存储该号码,并且在另一个视图控制器例如重复使用它:如何在ViewController中存储一个数字并在另一个ViewController上重用它?
FirstVC < ---用户键入数上UIText场
按钮是拍了拍FirstVC采取用户到SecondVC
SecondVC < - 数量可以调用,可以在标签上显示
能有人给我解释一下如何存储号码然后调用它并稍后显示它?
答
首先,你设置的segue
,
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "yourSegue" {
if let viewController = segue.destinationViewController as? your view controller type {
//for example
viewController.text = text
}
}
}
然后在您的按钮或任何你想要的,
performSegue(withIdentifier: "yourSegue", sender: sender)
为什么不反向逻辑?将第一个VC中的变量传递给第二个VC,在那里工作是*显示*它?这是大多数人认为要这样做的方式。 – dfd
问题是我还需要使用数字来创建一个方程,我需要显示输入的数字并在方程中使用它 – St33v3n
但是,事情的常见流程是(a)第一个VC有一些工作排序...说,获取用户输入的某种...后面(b)第二个视图 - 与相关的VC - 它有某种工作......说出一个数字并对其进行计算。这是你的基本MVC模型。一旦第二个VC处于控制状态,第一个VC就会被释放或被隐藏在当前视图和VC之下的堆栈中。事实上,Xcode中的所有内容(无论是Swift还是Obj-C)都适用于此。不需要*战斗 - 它 - 学习它! – dfd