Как заполнить данные в Multiple UIPickerView? - PullRequest
0 голосов
/ 17 октября 2011

У меня есть два поля, которые вызывают 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;
}
}

1 Ответ

1 голос
/ 17 октября 2011

Вы установили источник данных для pickerData?

Вы можете вызвать метод [yourPickerData reloadAllComponents];

...