按钮设置为nil Swift 2

时间:2015-09-19 00:11:15

标签: ios button null swift2 xcode7

我正在使用Swift 2和Xcode 7开发一个应用程序。我已经无数次完成了以下代码并且我成功了:

 button.setTitle("New Title, forState: .Normal)

但是,现在我收到了EXC_BAD_INSTRUCTION错误。当我尝试print(button)时,我得到了错误。它说fatal error: unexpectedly found nil while unwrapping an Optional value。我很确定button设置为nil。我正在将Main.Storyboard中的按钮连接到ViewContoller.swift我该怎么办?

2 个答案:

答案 0 :(得分:0)

有三种可能性:

(1)故事板中未正确连接按钮插座。

(2)此ViewController实例不是故事板中的实例。

(3)您过早地调用此代码(例如在prepareForSegue中)。

答案 1 :(得分:0)

奥特莱斯通常被宣布为隐式解包的选项。 (在类型后面有一个解释点。)

这意味着它可以是零,但是你可以保证在使用它之前,它将被设置为非零值。

你不需要打开它,但如果它是n,则引用它会崩溃。

您应该可以使用此表单:

按钮?.setTitle(“New Title,forState:.Normal)

如果按钮为零,那将跳过方法调用。

(我说“应该可以”因为我在过去的一个半月里一直在使用Objective-C而且我的Swift开始变得有点生锈了。)