gpt4 book ai didi

ios - 在 View Controller 之间传输变量而不会出错

转载 作者:行者123 更新时间:2023-11-28 15:38:24 25 4
gpt4 key购买 nike

enter image description here

这是我对 View Controller 的确切设置。segue 的类型是 show。名称是 s1这是我的代码:

import UIKit

class ViewController: UIViewController {
var x:String!
@IBOutlet weak var usr: UITextField!

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if(segue.identifier == "s1"){
let v = segue.destination as? ViewController222
v?.ab = usr.text!
}
}

@IBAction func b1(_ sender: UIButton) {
performSegue(withIdentifier: "s1", sender: nil)
}
}

对于第二个 View Controller ,ViewController222:

import UIKit

class ViewController222: UIViewController {
var ab:String!

@IBOutlet weak var l1: UILabel!

override func viewDidLoad() {
super.viewDidLoad()
l1.text=ab
}
}

有人可以帮忙吗?尽管设置正确,但我的程序崩溃了

最佳答案

您不应该手动调用 performSegue(withIdentifier:sender)。当您在 Interface Builder 中添加一个 segue 时,也会自动添加一个 Action ,并在您按下该 segue 附加到的按钮时调用它。当您按下按钮时,系统会自动调用 prepare(for segue)。

只需删除您的 IBAction,它应该可以正常工作。

关于ios - 在 View Controller 之间传输变量而不会出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44049886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com