2012-10-24 3 views
0

저는 뷰 컨트롤러가 있으며 그 안에는 줌 관리를위한 UIScrollViewUIImage이 있습니다. 이제 UIScrollViewDelegate 대리인과 메서드 viewForZoomingInScrollView:으로 확대/축소 효과를 처리하고 있지만 결과는 매우 불량합니다.UIScrollView + UIImage 및 줌 : 유체가 아닙니다.

#import "ImageViewController.h" 

@interface ImageViewController() <UIScrollViewDelegate, UIActionSheetDelegate> 
@property (strong, nonatomic) IBOutlet UIScrollView *scrollView; 
@property (weak, nonatomic) IBOutlet UIImageView *imageView; 

@end 

@implementation ImageViewController 

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    self.scrollView.delegate = self; 
    self.scrollView.maximumZoomScale = 3.0; 

    // some code 
} 

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView { 
    return self.imageView; 
} 
// last update 
- (void)scrollViewDidZoom:(UIScrollView *)scrollView { 
    if ([self.scrollView zoomScale] < 1.0) { 
     [self.scrollView setZoomScale:1.0]; 
    } 
} 

// some other methods... 

@end 

이 스토리 보드보기는 다음과 같습니다 :

나는 핀치 제스처 인식기를 사용하지 않는

이 내 코드입니다. 모든 이미지는 640x480처럼 아주 작습니다.

감사

P.S. 이것은 UICollectionView and images의 연속입니다.

+0

내가 여기에 잘못 아무것도 볼 수 없습니다. 유동적이지 않다고 말할 때, 확대/이동/양쪽 모두를 할 때 병이 들리는 것을 의미합니까? – mattjgalloway

+0

예, 많이! 내 말은, 사진을 확대하거나 트위터 나 IMDB 같은 다른 앱에서도 줌 기능이 매우 유동적이라는 것입니다. – jan267

+0

게시 한 코드와 스크린 샷에서 나는 틀린 것을 볼 수 없습니다. 따라서 문제는 다른 곳에 놓여 있어야합니다. 'scrollViewDidZoom :'어쩌면 집중적으로 작업하고 있습니까? – mattjgalloway

답변

4

체크 아웃 tutorial I wrote. 첫 번째 부분은 정확히 구현해야하는 부분입니다.

+0

다시 한번 감사드립니다 !!! – jan267

+0

@mattjgalloway 튜토리얼이 iOS 6 자동 레이아웃 기능과 함께 작동하도록 업데이트 될 수 있습니까? UIScrollView 안에 UIImageView를 임베드하여 스크롤하고 확대/축소하는 것은 자동 레이아웃을 사용하면 간단하지 않습니다. –

+0

@mattjgalloway : scroll + image에 대한 멋진 튜토리얼. –

관련 문제