Проблемы с UIPickerView Outlets в iOS5? - PullRequest
0 голосов
/ 27 декабря 2011

Я не понимаю, какие розетки должны быть подключены! В торговых точках у меня есть:

dataSource delegate

Но куда мне их подключить? И как я могу их потом использовать?

???

1 Ответ

0 голосов
/ 27 декабря 2011

В Xcode подключите источники данных и выходы делегатов к UIViewController, который содержит UIPickerView.Методы источника данных объявлены в реализации UIViewController.Допустим, ваш сборщик отобразит: «английский» и «французский»:

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView 
{
    return 2;
}

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
    NSArray *pickerContent = [NSArray arrayWithObjects:@"English", @"French", nil];
    return [pickerContent objectAtIndex:row];
}

Методы делегирования также объявлены в реализации UIViewController:

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
    NSArray *titles = [NSArray arrayWithObjects:@"English", @"French", nil];
    NSString *userSelectionFromPicker = [titles objectAtIndex:row];
}

Некоторые примеры использования userSelectionFromPicker для выполнения действий в приложении:

  1. Метод View Controller: [localMethod doSomethingWith:userSelectionFromPicker]
  2. Примечание: userSelectionFromPicker становится свойствомКонтроллера Представления (в отличие от локальной переменной) и доступный делегату Контроллера Представления - часто, когда Диспетчер Представления отклонен
  3. Уведомление вызывается, когда userSelectionFromPicker изменяется
...