Выбирает ли UIPickerViewRow: inComponent: анимированный: вызов pickerView: didSelectRow: inComponent:?

Вызывает ли вызов UIPickerView selectRow:inComponent:animated: pickerView:didSelectRow:inComponent:? В противном случае, могу ли я просто назвать это сам?

Спасибо

Ответ 1

Это не так, хотя его можно вызвать вручную.

Ответ 2

Вам нужно вызвать его вручную, и вы сделаете это, хотя делегат.

// In this example the UIPickerView object is in a property
...
self.pickerView.datasource = self;
self.pickerView.delegate = self;

// Selects the row in the specified component
[self.pickerView selectRow:0 inComponent:0 animated:NO];

// Manually calls pickerView:didSelectRow:inComponent:
[self pickerView:self.pickerView didSelectRow:0 inComponent:0];

Ответ 3

Он также не вызывает метод делегирования с помощью swift, но вы также можете сделать это вручную. Решение для быстрого 3 и быстрого 4:

self.pickerView.datasource = self
self.pickerView.delegate = self

self.pickerView.selectRow(0, inComponent: 0, animated: false)
self.pickerView.delegate?.pickerView?(self.pickerView, didSelectRow: 0, inComponent: 0)