ios - Swift 可选错误

标签 ios xcode swift

一直问这个问题是为了让自己感到羞耻,但没有必要提供帮助。我只是不明白发生了什么事。我以为模拟器崩溃了,但事实证明我不小心设置了一个断点,这就是导致它返回 Xcode 的原因。

请随意忽略,但也许保留此内容会对刚接触 Xcode 的其他人有所帮助。

我正在学习 Swift,并参加 lynda.com 的入门类(class)。我遇到了一个错误,我确信这是由于类(class)制作以来 Swift 的变化造成的(讲师使用的是 Xcode 6.0.1,而我使用的是 6.4)。我希望得到一些帮助来解决这个问题,以便我可以继续。

示例项目正在构建一个简单的计算器。我正在执行的步骤是创建代码以单击按钮(计算器 UI 上的任何数字),并将其显示在计算器显示屏的 UILabel 中。

这显然是导致问题的函数:

var valueString:String! = ""

@IBAction func tappedNumber(sender: UIButton) {
    var str:String! = sender.titleLabel!.text
    valueString = valueString.stringByAppendingString(str)
    label.text = valueString
}

它在 Xcode 中不会显示为错误,但是当我运行模拟器时,当我单击其中一个数字按钮时,模拟器会崩溃回到 Xcode,并且出现 var str:String! 行。 = sender.titleLabel!.文本突出显示。

从我已经掌握的一点点来看,我猜测这个错误与 Swift 改变它处理可选值的方式有关。但我只是不知道足够确定,或者如何解决它。

任何帮助将不胜感激!

最佳答案

试试这个:

var str:String! = sender.titleLabel?.text

关于ios - Swift 可选错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31438510/

相关文章:

ios - 从 iTunes Connect 中删除新的应用程序版本

ios - 在 UNNotificationServiceExtension 中为 iOS 远程通知添加系统声音

ios - 我可以为 4.7 和 5.5 设置特定的自动布局约束吗

ios - 使用 Xcode 9 为 iOS 构建 Ceres 时出现问题

ios - Unowned 引用在取消初始化时是否设置为 'nil'?

ios - 使用 ActivityViewController 的 iOS 6 上的 Twitter 预览表以英文显示而不是语言设备

iOS 导出存档配置文件列表

ios - FBSDKCoreKit错误: "Include of non-modular header inside framework module"

ios - 如何从类属性(特别是 UIButton)访问父类实例?

iphone - 使用 FMDB 插入表失败