我编写了一个基于UIPickerView
. 在一个类中,我实现了下一个方法:
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
let min = (selectedRow(inComponent: 0) % minutes.count)
let sec = (selectedRow(inComponent: 1) % seconds.count)
self.min = min
self.sec = sec
}
每次用户使用选择器视图从“min”和“sec”中选择值时,这些类变量都会相应地更改。所以,工作正常。
现在,我希望此类在每次更改这些变量时发送事件。valueChanged
是否可以为此类采用事件,以及如何实现它,或者我必须为此目的制作自定义事件?我想这样做是为了能够通过 IB 制作行动出口。如果我错过了模式,请纠正我。
换句话来说,我是否可以提出这个问题:是什么让内置程序UIDataPicker
能够通过操作出口连接到界面构建器中的视图控制器 - 我应该在自定义类中添加什么来部分实现该功能?
苹果表示:“UIDatePicker
类使用自定义子类UIPickerView
来显示日期和时间。” 如果我错了,请在这里纠正我,但他们也指出,UIDatePicker
继承 fromUIControl
而不是 from UIPickerView
。至于UIPickerView
- 他们说它继承自UIView
. UIControl
因此,我认为forUIPickerView
和的继承没有任何联系UIDatePicker
。UIControl
由于类的多重继承,我也无法继承以获得事件发送功能UIView
。不明白为什么这里的事情这么奇怪,我不能UIControl
使用UIPickerView
.