#iphone #objective-c #xcode
#iPhone #objective-c #xcode
Вопрос:
Я искал здесь, но не увидел ничего похожего на эту ошибку.
Я пытаюсь заполнить мой pickerview при viewDidLoad, но когда я запускаю свою программу, pickerView просто заполняется «?» вместо моих строк… что здесь происходит? Заранее спасибо.
- (void)viewDidLoad {
[super viewDidLoad];
activities = [[NSArray alloc] initWithObjects:@"sleeping", @"eating", @"working", @"thinking", @"crying", @"begging", @"leaving", @"shopping", @"hello worlding", nil];
feelings = [[NSArray alloc] initWithObjects:@"awsome",@"sad",@"happy",@"ambivalent",@"nauseous",@"psyched",@"confused",@"hopeful",@"anxious",nil];
}
Ответ №1:
Вам необходимо реализовать протоколы UIPickerViewDelegate
и UIPickerViewDataSource
:
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 2;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
if (component == 0)
return [activities count];
else
return [feelings count];
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
if (component == 0)
return [activities objectAtIndex:row];
else
return [feelings objectAtIndex:row];
}