Adding another location to execute external code.
This commit is contained in:
parent
5e28b0bdc5
commit
65586a7568
@ -22,8 +22,12 @@ open class ItemDropdownEntryField: BaseDropdownEntryField {
|
||||
/// When selecting for first responder, allow initial selected value to appear in empty text field.
|
||||
public var setInitialValueInTextField = true
|
||||
|
||||
/// Closure passed here will run as picker changes items.
|
||||
public var observeDropdownChange: ((String)->())?
|
||||
|
||||
/// Closure passed here will run upon dismissing the selection picker.
|
||||
public var observeDropdownSelection: ((String)->())?
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Initializer
|
||||
//--------------------------------------------------
|
||||
@ -85,7 +89,7 @@ open class ItemDropdownEntryField: BaseDropdownEntryField {
|
||||
guard !pickerData.isEmpty else { return }
|
||||
|
||||
if let pickerIndex = pickerView?.selectedRow(inComponent: 0) {
|
||||
observeDropdownChange?(pickerData[pickerIndex])
|
||||
observeDropdownSelection?(pickerData[pickerIndex])
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -107,6 +111,7 @@ extension ItemDropdownEntryField: UIPickerViewDelegate, UIPickerViewDataSource {
|
||||
|
||||
@objc public func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
|
||||
text = pickerData[row]
|
||||
observeDropdownChange?(pickerData[row])
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user