Picker View未捕获的异常SWIFT

时间:2019-03-08 19:54:05

标签: ios swift uipickerview

您好,我是SWIFT的初学者,我的项目遇到了一个问题:我的一个View控制器上有一个Picker View,并且我认为我已经连接了所有插座,但是当我执行代码并测试我的应用程序时在模拟器上,当我单击必须打开设置了选择器视图的视图的按钮(在上一个视图上)时,就会出现错误。当我从View控制器中删除选择器View时,就没有更多错误了。 事实是,我已经在PickerView上观看了所有教程,并做了所有的介绍...

我不知道我的错误来自哪里。

我让一些屏幕截图更加清晰

1 个答案:

答案 0 :(得分:0)

第一个问题是您不存储创建的选择器视图实例。您在函数内部实例化它,分配委托和数据源,然后不将其存储在类中。因此,ARC(自动引用计数)将其释放,因为它认为不再需要该实例。只要在您的PickerController中创建一个变量并存储,只要视图控制器仍处于活动状态即可。

第二个问题是您实际上要查看选择器视图,因此需要将其添加到视图控制器的视图中。您可能需要将其定位正确或使用布局约束(搜索自动布局)。

var pickerView: UIPickerView!

func createPickerView() {
    pickerView = UIPickerView()
    pickerView.delegate = self
    pickerView.dataSource = self
    view.addSubview(pickerView)
}