我正在加載imageview,如下所示。 self.displayReceivedImageScrollView是頭文件中定義的scrollview屬性。無法縮放雙擊圖像
_displayImage.image = nil;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^(void) {
NSData *data0 = [NSData dataWithContentsOfURL: [NSURL URLWithString:savedValue]];
UIImage *image = [UIImage imageWithData: data0];
dispatch_sync(dispatch_get_main_queue(), ^(void) {
_displayImage.image = image;
});
});
UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
[doubleTap setNumberOfTapsRequired:2];
[self.displayReceivedImageScrollView addGestureRecognizer:doubleTap];
以下是我的doubleTap處理程序。我想要在用戶雙擊圖像時縮放圖像。
- (void)handleDoubleTap:(UIGestureRecognizer *)gestureRecognizer {
if(self.displayReceivedImageScrollView.zoomScale > self.displayReceivedImageScrollView.minimumZoomScale)
[self.displayReceivedImageScrollView setZoomScale:self.displayReceivedImageScrollView.minimumZoomScale animated:YES];
else
[self.displayReceivedImageScrollView setZoomScale:self.displayReceivedImageScrollView.maximumZoomScale animated:YES];
}
但問題是,圖像沒有被放大。 handleDoubleTap方法並沒有被解僱,爲什麼這樣呢?
如果我是你,放大/縮小分量的,我會用CGAffineTransformScale方法(https://developer.apple.com/library/ios/documentation/GraphicsImaging/Reference/CGAffineTransform /)。它非常易於使用,你應該用一個捏手勢識別器來嘗試。如果你願意,我也可以發佈一個實際用於放大/縮小的捏手勢識別器的樣本;) – Kokodelo
請給我一個示例代碼。謝謝 – Roger