Реализовали ли вы:
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
return self.imageView;
}
Кроме того, вы знаете, что, установив scrollView contentSize в ваш imageSize, он не может расти больше, чем это, верно? Это увеличит масштаб, обрезая внешние пиксели соответственно. Кроме того, если это ваш план, почему бы просто не установить его напрямую?
myScrollView.contentSize = imageView.frame.size;
===== Дальнейший ответ, ответ на дополнительный источник
Ну, главное, что я заметил, это то, что вам нужно возвращать imageView ucdView в viewForZoomingInScrollView, а не scrollView. Похоже, вы уже создали ucdView как свойство (так что оно живет столько же, сколько ваш вид), но на всякий случай ...
1) В вашем .h файле:
UIImageView * ucdView;
@property (nonatomic, retain) UIImageView * ucdView;
2) В вашем .m файле;
@synthesize ucdView;
3) измените свою строку:
ucdView = [[UIImageView alloc] initWithImage:image];
до
self.ucdView = [[UIImageView alloc] initWithImage:image];
4) изменить строку
return scrollView
до:
return self.ucdView;
5) Добавьте следующее к вашей процедуре dealloc:
self.ucdView = nil;
Кроме того, вы добавили протокол <UIScrollViewDelegate
> в определение ViewController (в файле .h)?
Наконец, у вас есть утечка прокрутки и здоровья; добавить [релиз scrollView]; и [Health release] в конце viewDidLoad