Xcode Swift:EXC\U BAD\U指令(代码=EXC\U I386\U INVOP,子代码=0x0)

Xcode Swift:EXC\U BAD\U指令(代码=EXC\U I386\U INVOP,子代码=0x0),xcode,swift,Xcode,Swift,嗨,我是全新的斯威夫特,需要一些帮助 每次我运行代码时,我的应用程序都会崩溃,并抛出一个“以上错误” 谁能告诉我我需要做什么,或者我需要在代码中替换什么 import UIKit class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource{ @IBOutlet weak var picker: UIPickerView! var employeeNames = ["

嗨,我是全新的斯威夫特,需要一些帮助

每次我运行代码时,我的应用程序都会崩溃,并抛出一个“以上错误”

谁能告诉我我需要做什么,或者我需要在代码中替换什么

import UIKit

class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource{


    @IBOutlet weak var picker: UIPickerView!
    var employeeNames = ["John","Jane","Jack","James"]


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


        self.picker.delegate = self
        self.picker.dataSource = self
    }

    func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
        return 1
    }

    func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return employeeNames.count
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
        return employeeNames [row]
    }

    func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
        print(employeeNames[row])
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }   
}

您的代码非常好,因此唯一的选择是您尚未连接pickerView插座。Ctrl键单击故事板中的picker视图,查看是否显示了插座“picker”。如果没有,则Ctrl键从pickerView拖动到插座以将其连接起来。

我已完成此操作,pickerView似乎已连接,你知道我可能会出现此错误的任何其他原因吗?有没有办法深入了解并找到错误具体来说,我的问题是尝试理解错误此错误通常意味着在尝试访问它时有一个变量或隐式展开的可选项为零。这就是为什么我认为选择器出口nt连接,因为这是唯一可以找到的零。是否有多个插座连接到pickerView?有时会这样。也可以将视图控制器重命名为PickerViewController或其他名称,然后将storyboard ViewController设置为该类(我不认为这是问题,但值得一试)