Могу ли я использовать один UIPickerView со многими UITextFields, или мне нужно создать много pickerviews, по одному для каждого UITextField (у меня есть все UITextFields в одном представлении)?Один UIPickerView с несколькими текстовыми полями
1
A
ответ
0
Я думаю, что одного представления Picker с несколькими текстовыми полями будет достаточно. Вы можете легко пометить текстовые поля и обработать их в соответствии с вашими потребностями.
Multiple sources for UIPickerView on textfield editing
Поможет вам начать
2
Пожалуйста объявляю textFieldName глобально:
NSString * textFieldName;
Распределение в didLoad:
- (void)viewDidLoad
{
[super viewDidLoad];
[pickerView setHidden:YES];
textFieldName=[NSString alloc]init];
pickerArray1 = [[NSMutableArray alloc] initWithObjects:@"apple", @"mango", @"banana", nil];
pickerArray2 = [[NSMutableArray alloc] initWithObjects:@"black", @"white", @"green", nil];
}
Пожалуйста, установите текстовое имя поля в textFieldName строке:
-(void)textFieldDidBeginEditing:(UITextField *)textField{
[pickerView setHidden:YES];
if (textField1.editing == YES)
{
textFieldName=textField1;
[pickerView setHidden:NO];
}
else
if (textField2.editing == YES)
{
textFieldName=textField2;
[pickerView setHidden:NO];
}
}
Затем используйте эту textFieldName, чтобы проверить в методе pickerview:
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
{
if (textFieldName isEqualToString:@"textField1")
{
return [pickerArray1 count];
}
else
if (textFieldName isEqualToString:@"textField2")
{
return [pickerArray2 count];
}
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
{
if (textFieldName isEqualToString:@"textField1")
{
return [pickerArray1 objectAtIndex:row];
}
else
if (textFieldName isEqualToString:@"textField2")
{
return [pickerArray2 objectAtIndex:row];
}
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
if (textFieldName isEqualToString:@"textField1")
{
textField1.text= [pickerArray1 addObjectAtIndex:row];
}
else
if (textFieldName isEqualToString:@"textField2")
{
textField2.text= [pickerArray2 addObjectAtIndex:row];
}
[pickerView setHidden:YES];
}
4
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
if (textField1.editing == YES)
{
textFieldName=textField1;
}
else
if (textField2.editing == YES)
{
textFieldName=textField2;
}
}
3
Используйте вид списка массива, а затем получить позицию ,
Смежные вопросы
- 1. NSScrollView с несколькими текстовыми полями
- 2. Mutiple pickerviews с несколькими текстовыми полями viewviews swift
- 3. Listview: Только один элемент списка с несколькими текстовыми полями
- 4. Слияние почты с несколькими текстовыми полями Word
- 5. Несколько UIPickerViews в одном представлении с несколькими текстовыми полями
- 6. Центр нескольких ярлыков с несколькими текстовыми полями
- 7. scrollview внутри вида с несколькими текстовыми полями
- 8. массив php с несколькими текстовыми полями
- 9. AngularJS поиск с несколькими текстовыми полями
- 10. Извлечение значений с несколькими зацикленными текстовыми полями
- 11. Как получить MessageBox с несколькими текстовыми полями
- 12. SQL как с несколькими текстовыми полями
- 13. Looping корыта с несколькими полями с текстовыми полями в XSLT
- 14. jQuery указать между несколькими текстовыми полями
- 15. pandas.dataframe.describe с текстовыми полями
- 16. gridview с текстовыми полями
- 17. проблемы с текстовыми полями
- 18. WPF Usercontrol с текстовыми полями
- 19. JqGrid Поиск с несколькими текстовыми полями для поля
- 20. Использование размытия с текстовыми полями
- 21. Использование функций JQuery с несколькими текстовыми полями с одинаковым ID
- 22. Как сделать TinyMce работать с несколькими текстовыми полями имен массивов?
- 23. Выберите окно с текстовыми полями
- 24. Присоединение ключевого события с несколькими текстовыми полями jQuery
- 25. Горизонтальный UIScrollView с несколькими текстовыми полями для отображения
- 26. JQuery, работающий с несколькими текстовыми полями, массив текстовых полей
- 27. Супертонкая библиотека не поддерживает заголовок с несколькими текстовыми полями
- 28. Можно ли использовать виртуальную клавиатуру с несколькими текстовыми полями?
- 29. AS3 - Меню с текстовыми полями
- 30. Сетка панели с текстовыми полями
если у вас есть ответ, то щелкните правой кнопкой мыши, указав ответ – dks1725
нормально, но я не знаю, как это сделать. – izan
как принять ответы, пожалуйста? – izan