Я начинаю разработку iOS, и у меня, похоже, есть ошибка!UIPickerView возвращается "?" в столбцах
Изображение: http://prntscr.com/4p1hfr
При использовании этого кода:
Recent.h:
@interface RecentImages : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>
@property (strong, nonatomic) NSArray *imageURLs;
@end
Recent.m
- (void)viewDidLoad
{
[super viewDidLoad];
_imageURLs = @[@"test", @"test",
@"test", @"test", @"test"];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark -
#pragma mark PickerView DataSource
- (NSInteger)numberOfComponentsInPickerView:
(UIPickerView *)pickerView
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView
numberOfRowsInComponent:(NSInteger)component
{
return _imageURLs.count;
}
- (NSString *)pickerView:(UIPickerView *)pickerView
titleForRow:(NSInteger)row
forComponent:(NSInteger)component
{
return _imageURLs[row];
}
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
inComponent:(NSInteger)component
{
NSLog(@"got it");
}
Следует отображать "тест" несколько раз право? Не "?". Я очень смущен.
Вы уверены, что вызываются методы делегата? – danh
Что именно вы имеете в виду? – user3818701
Поместите точку останова в numberOfRowsInComponent или titleForRow. Посмотрите, вызваны ли они. – danh