Воспроизведение UIPickerview, а не ввод с клавиатуры iOS
По сути, я бы хотел, чтобы пользователь щелкал в текстовом поле, и оно отображало бы заполненное окно выбора, а не клавиатуру. Это также потребовало бы панель инструментов с готовой кнопкой, а я предполагаю. В настоящее время у меня есть поле, заданное в качестве вывода и действия, и не намного. У меня также есть лист действий в коде, который используется, когда пользователь также отправляет что-то, если это имеет какое-либо значение для возможного использования листа действий для этого.
Я пытался исследовать эту тему, но 99% тем были связаны с датами, а не с просмотрами (или очень старым кодом).
Вот изображение того, как оно выглядит для справки.
1 ответ
UITextField
теперь имеет inputView
имущество. Здесь вы можете назначить ему отображение, которое вы хотите, включая UIPickerView. Вы должны настроить окно выбора, хотя и должны реализовать UITextFieldDelegate
а также UIPickerViewDataSource
в вашем.h:
@interface ViewController : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate>
Затем создайте представление выбора и назначьте его текстовому полю.
UIPickerView *pickerView = [[UIPickerView alloc] init];
pickerView.dataSource = self;
pickerView.delegate = self;
// ... ...
self.pickerTextField.inputView = pickerView;
Поскольку вы реализовали интерфейсы UIPickerView, теперь вы должны реализовать следующие методы:
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
Тогда тебе следует идти. Проверьте документацию для некоторых других методов, если вам нужна дополнительная информация.