2011-02-09 4 views
1

Я показываю объекты массива в pickerview.как разместить ранее выбранное значение на панели UIPickerview

Мой массив содержит {один, два, три, четыре, пять}

Когда я выбираю значение в представлении захватывающего, я получаю это значение с помощью
- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {

Если я выбираю два, выход из режима выбора, и в следующий раз он отображает один в панели просмотра подборщика.

Но мне нужно отобразить ранее выбранное значение.

Я думаю, что это понятно, иначе я могу добавить комментарий.

ответ

0
- (void) viewDidAppear:(BOOL)animated 
{ 
[pickerView selectRow:selectedItem inComponent:0 animated:YES]; 
} 
0

вызов метода

- (void)selectRow:(NSInteger)row inComponent:(NSInteger)component animated:(BOOL)animated 

После вывода его на второй раз

2

вам нужно хранить значение выбранной строки в переменной называют его selectedRow и когда вид появляется использовать этот метод на объекте pickerView

- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component 
{ 
selectedRow = row; 
} 

- (void)viewWillAppear 
{ 
    [picker selectRow:selectedRow inComponent:0 animated:YES]; 
} 

, чтобы выбрать строку в конкретный компонент.

0

В случае pickerview был alloc/inited, а затем добавляет в качестве подвида на виде тогда

[picker selectRow:selectedRow inComponent:0 animated:YES]; 

работает только после того, как

[self.view addSubview:picker];  
Смежные вопросы