gpt4 book ai didi

ios - 在 Swift 中使用 Button 文本进行双重可选(??)和双重展开(!!)

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

我在标准的单 View 项目中有一个标准的 UIButton。我想在单击按钮时获取按钮的文本。但是,在 Xcode 7.0 GM 中,编译器要求我使用 ???!!! 时出现奇怪的行为。当试图展开文本时,会出现更奇怪的行为:只有三重展开才能最终做到这一点。

@IBAction func buttonTapped(sender: AnyObject) {

print( sender.titleLabel?!.text ) // Optional("Button")
print( sender.titleLabel??.text ) // Optional("Button")
print( sender.titleLabel!!.text ) // Optional("Button")

print( sender.titleLabel?!.text! ) // Optional("Button")
print( sender.titleLabel??.text! ) // Optional("Button")
print( sender.titleLabel!!.text! ) // Button

}

这是怎么回事?

我见过

但是 sender 在这里不是一个数组,我看不出这些答案的联系。

最佳答案

这是因为 AnyObject。第一个 ? 用于“它是响应 titleLabel 方法的对象吗?”,第二个 ? 用于“是标题标签为零?”

如果您只是从 Interface Builder 连接一个按钮,您可以使用

@IBAction func buttonTapped(sender: <b>UIButton</b>)

关于ios - 在 Swift 中使用 Button 文本进行双重可选(??)和双重展开(!!),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32900891/

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