Я загружаю представление выбора в первый раз со значениями, которые хранятся в массиве.
Я использую,
temp = [NSArray arrayWithObjects:@"Male", @"Female", nil]; - (NSString *)pickerView:addData titleForRow:(NSInteger)row forComponent:(NSInteger)component { return [temp objectAtIndex:row]; }
Но он показывает пустой вид сборщика.
Вы пробовали [somePickerVier reloadAllComponents];?
[somePickerVier reloadAllComponents];
Кроме того, правильный метод делегата: - (NSString *)pickerView: (UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component.
- (NSString *)pickerView:
(UIPickerView *)pickerView
titleForRow:(NSInteger)row forComponent:(NSInteger)component
Тебе нужно сделать одну вещь.Добавьте следующие строки к вашему событию:
{ myPicker.delegete=self; myPicker.datasource=self; }
Также используйте это, когда происходит сбой представления выбора, добавляя источник данных.
или
[myPicker reloadAllComponents];
вы использовали массив autorelease так что вы должны сохранить это, если хотите
тебе не нравится
затем сделайте alloc и init затем
добавить мужчину, женщину ...
temp = [[NSArray arrayWithObjects: @ "Male", @ "Female", nil] retain];
(NSString *) pickerView: addData titleForRow: (NSInteger) строка forComponent: (NSInteger) компонент {
return [temp objectAtIndex: row];
}
Убедитесь, что вы задали делегат и источник данных?
Если нет,
Вы должны реализовать это в своем .h файле
@interface YourView : UIViewController<UIPickerViewDelegate,UIPickerViewDataSource>