应用程序在使用UIPickerView时崩溃

时间:2016-04-15 09:03:39

标签: ios swift uipickerview

我有一个带有两个UIPickerViews的应用程序可以出现在UITableViewCell中:numberPicker和timePicker。它们从未同时出现在屏幕上,并且它们被声明为:

@IBOutlet weak var numberPicker: UIPickerView!
@IBOutlet weak var timePicker: UIPickerView!

根据正在使用的那个,在awakeFromNib中设置委托和数据源:

override func awakeFromNib() {
    super.awakeFromNib()

    if timePicker != nil {
        timePicker.delegate = self
        timePicker.dataSource = self
    }

    if numberPicker != nil {
        numberPicker.delegate = self
        numberPicker.dataSource = self
    }
}

如果numberPicker是我试图展示的选择器,那么该应用程序运行没有问题。如果timePicker是我试图显示的选择器,则应用程序崩溃。设置断点后,这是崩溃的行:

func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {

    if pickerView == numberPicker {  <----- CRASHES HERE ----->
        return 1
    } else {
        return 2
    }
}

请记住,当codePicker尝试在屏幕上显示时,代码会起作用,而当timePicker尝试出现时,代码会崩溃。为什么会这样?在此先感谢您的帮助!

更新 以下是错误的屏幕截图

enter image description here

更新#2

我很抱歉不早点包括这个。我的日志窗口被最小化,我忽略了它,没有注意到。错误是:

致命错误:在解包可选值时意外发现nil

0 个答案:

没有答案