gpt4 book ai didi

swift - 成功传递数据时应用程序崩溃

转载 作者:搜寻专家 更新时间:2023-11-01 05:35:54 24 4
gpt4 key购买 nike

我有一个简单的应用程序。将用户信息从一个 View Controller 传递到另一个的 TableView 。它成功打印出我的用户对象,我可以在控制台中看到数据,但是当我从对象中提取数据到我的 View 中时,它不显示

@IBOutlet weak var chatPartnerLabel: UILabel!

var user: User? {
didSet {
print(user) //This prints out all information fine
chatPartnerLabel.text = user?.firstName //This crashes the app because chatPartnerLabel.text is nil
}
}

override func viewDidLoad() {
super.viewDidLoad()
chatPartnerLabel.text = user?.firstName //This comes up as nil
}

我也试过对标签进行硬编码,看看它是否能正常工作

chatPartnerLabel.text = "My text" //Changes the label to My Text

我也试过将 user?.firstName 放在 viewDidAppear 和 viewWillAppear 中都显示一个空标签。

正如您在控制台中看到的那样,我的用户那里有数据。我在尝试设置时遇到的崩溃是 nil

enter image description here

我做错了什么才能成功将我的 chatPartnerLabel 更改为名字或名字?

最佳答案

class User {
var firstName = "fn"
}


///uiviewcontroller:


@IBOutlet weak var chatPartnerLabel: UILabel!
var user: User? {
didSet {
print(user) //This prints out all information fine
chatPartnerLabel.text = user?.firstName //This crashes the app
}
}

两者:

override func viewDidLoad() {
super.viewDidLoad()
user = User()

和:

override func viewDidLoad() {
super.viewDidLoad()
chatPartnerLabel.text = user?.firstName

工作!我已经测试过了!

我们需要更多信息和正确的调用堆栈。展开时可能是 chatPartnerLabel 为 nil。

关于swift - 成功传递数据时应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40147830/

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