У меня есть два поля, которые вызывают UIPickerView (Страна и провинция). Я использую inputView, чтобы показать вид выбора. Оба используют одно представление выбора, но как мне заполнить поле?
Здесь я положил образец кода
Этот код выполняется после просмотра событий выбора! Кто-то предлагает мне поместить этот код в нужное место.
-(void)textFieldDidBeginEditing:(UITextField*)textField;
{
// Check if the field is Country
if (textField.tag == 3) {
pickerData = [[NSMutableArray alloc] init];
[pickerData addObject:@"Australia"];
[pickerData addObject:@"Canada"];
[pickerData addObject:@"India"];
[pickerData addObject:@"China"];
[pickerData addObject:@"United States"];
[pickerData addObject:@"United Kingdom"];
[pickerData addObject:@"New Zealand"];
txtCountry.inputView = picker;
picker.hidden = NO;
}
// Check if the field is Province
else if (textField.tag == 4) {
if ([[txtCountry text] isEqualToString: @"Canada"]) {
pickerData = [[NSMutableArray alloc] init];
[pickerData addObject:@"Quebec"];
[pickerData addObject:@"Ontario"];
[pickerData addObject:@"British Columbia"];
[pickerData addObject:@"Prince Evard Island"];
[pickerData addObject:@"Alberta"];
[pickerData addObject:@"Sascatchwan"];
txtProvince.inputView = picker;
picker.hidden = NO;
}
else {
txtProvince.inputView = nil;
picker.hidden = YES;
}
}
else {
picker.hidden = YES;
}
}