Я - struggeling со своим UIScrollview, чтобы заставить это увеличивать базовый UIImageView. По моему мнению, контроллер я установил
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
return myImageView;
}
В viewDidLoad методе я пытаюсь установить zoomScale на 2 следующим образом (отметьте UIImageView, и Изображение установлено в Интерфейсном Разработчике):
- (void)viewDidLoad {
[super viewDidLoad];
myScrollView.contentSize = CGSizeMake(myImageView.frame.size.width, myImageView.frame.size.height);
myScrollView.contentOffset = CGPointMake(941.0, 990.0);
myScrollView.minimumZoomScale = 0.1;
myScrollView.maximumZoomScale = 10.0;
myScrollView.zoomScale = 0.7;
myScrollView.clipsToBounds = YES;
myScrollView.delegate = self;
NSLog(@"zoomScale: %.1f, minZoolScale: %.3f", myScrollView.zoomScale, myScrollView.minimumZoomScale);
}
Я попробовал несколько изменений этого, но NSLog всегда показывает zoomScale 1,0.
Какие-либо идеи, где я завинчиваю этого?
Наконец-то я заставил это работать. проблема была вызвана тем, что вызов делегата находился в конце. Теперь я переместил его и .... поехали.
Новый код выглядит так:
- (void)viewDidLoad {
[super viewDidLoad];
myScrollView.delegate = self;
myScrollView.contentSize = CGSizeMake(myImageView.frame.size.width, myImageView.frame.size.height);
myScrollView.contentOffset = CGPointMake(941.0, 990.0);
myScrollView.minimumZoomScale = 0.1;
myScrollView.maximumZoomScale = 10.0;
myScrollView.zoomScale = 0.7;
myScrollView.clipsToBounds = YES;
}
Вот еще один пример, который я сделал. В этом примере используется изображение, включенное в папку ресурсов. По сравнению с вашим примером этот добавляет UIImageView в представление как вложенное представление, а затем изменяет масштаб всего представления.
-(void)viewDidLoad{
[super viewDidLoad];
UIImage *image = [UIImage imageNamed:@"random.jpg"];
imageView = [[UIImageView alloc] initWithImage:image];
[self.view addSubview:imageView];
[(UIScrollView *) self.view setContentSize:[image size]];
[(UIScrollView *) self.view setMaximumZoomScale:2.0];
[(UIScrollView *) self.view setMinimumZoomScale:0.5];
}