Позвольте мне указать на несколько проблем с вашим кодом.
- У вас есть
;
в конце вашего numberOfRows
метода перед запуском блока метода.Это не сработает. - Вы используете заглавные буквы в качестве переменных экземпляра - плохая идея.
- Вы не используете предложения
else
, в результате чего тесты запускаются, когда их больше нетобязательно. - То, как вы вкладываете операторы if, также создает повторяющийся код.
Вероятно, вы не видите никаких изображений из-за того, что находится в вашем массиве изображений.Этот массив, как вы его используете, должен содержать UIImageViews.Тем не менее, это противоречило бы цели повторного использования представлений.Скорее, у вас должен быть массив с именами изображений или изображений и создавать представление только при необходимости.
- (UIView *)pickerView:(UIPickerView *)pickerView
viewForRow:(NSInteger)row
forComponent:(NSInteger)component
reusingView:(UIView *)view{
if (component!=1) return nil;
UIImageView *imageView = nil;
UIImage *image = [UIImage imageNamed:[self.imagesArray objectAtIndex:row]];
if (view==nil) {
imageView = [[UIImageView alloc] initWithImage:image];
}
else {
imageView = (UIImageView *)view;
imageView.image = image;
}
view = imageView;
return view;
}
Если это все еще не работает, пожалуйста, более конкретно о том, что не работает.