' IBOutlet中'属性具有非可选类型' UIButton'

时间:2014-07-24 19:15:49

标签: ios xcode swift

这是我的代码:

import UIKit

class ViewController: UIViewController {

    @IBOutlet var button: UIButton

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

}

这是一个简单的IBOutlet(直接来自Apple开发人员文档)。它给了我错误"' IBOutlet'属性具有非可选类型' UIButton'"我不知道如何解决它。

3 个答案:

答案 0 :(得分:10)

应该是那样的(在Beta 3或之前):

@IBOutlet var button: UIButton?

IBOutlets必须是选项,因此在{+ 1}}后面放置一个类型。

答案 1 :(得分:9)

它也可以是 -

    @IBOutlet var button: UIButton! 

    @IBOutlet var weak button: UIButton! (in case you are not doing view unloading)

如果您使用的是XCODE 6 Beta 4

答案 2 :(得分:0)

class SecondViewController: UIViewController {

     @IBOutlet weak var name: UILabel! = nil

     override func viewDidLoad() {

           super.viewDidLoad()

           name.text="i m a label"
     }
 }

此代码正常运行

但当我替换@IBOutlet弱var名称:UILabel?它不起作用。