ios показывает одно поле в UIPickerView вместо всех

#ios #swift

#iOS #swift

Вопрос:

У меня есть формы для заполнения, внутри формы есть 6 полей, которые заполняются путем выбора. Я использую текстовое поле в форме и подключаюсь к pickerView, как показано ниже. Однако я хочу, чтобы каждое поле выбиралось только по одному, а не отображались все параметры выбора.

 let pickerViewA = UIPickerView()
pickerViewA.dataSource = self
pickerViewA.delegate = self
textfieldA.inputView = pickerViewA

let pickerViewB = UIPickerView()
pickerViewB.dataSource = self
pickerViewB.delegate = self
textfieldB.inputView = pickerViewB
  

Скриншот результата

Должен ли я использовать NestedClass для UIPickerViewDelegate,UIPickerViewDataSource??

Комментарии:

1. Не могли бы вы уточнить, к чему приводит ваша текущая реализация?

2. Я добавил результат скриншота, и вы видите, что в форме есть несколько полей, они не связаны, поэтому одновременно должно отображаться только одно pickview для каждого поля

3. Не могли бы вы показать, как вы представляете UIPickerView?

4. Вау, твой вопрос помог. вместо компонента: я должен был использовать _pickerview . numberOfComponents() возвращает 1 вместо возврата 6 спасибо

Ответ №1:

вы можете заархивировать свой результат с UITextField помощью методов делегирования и методов UIPickerView делегирования.

Здесь я подробно объясняю :

  • Вы должны загрузить соответствующие текстовому полю данные в свой pickerview, пока конкретное текстовое поле активно.
  • Предположим, у вас есть текстовое поле для выбора страны, поэтому в это время вам нужно загрузить данные, относящиеся к стране, в свой pickerview.
  • Убедитесь, что вам просто нужно добавить только 1 компонент в numberOfComponents