0
シングルタップで画像を拡大するのは難しいですが、まだ成功していません。私は素晴らしい画像が6枚あるカルーセルビューを持っていますが、カルーセルビューで画像をタップすると、特定の画像をズーム/ポップアップしたいと思っています。どんな助力も高く評価されます。iCarouselビューでシングルタップの画像をズームするには?
シングルタップで画像を拡大するのは難しいですが、まだ成功していません。私は素晴らしい画像が6枚あるカルーセルビューを持っていますが、カルーセルビューで画像をタップすると、特定の画像をズーム/ポップアップしたいと思っています。どんな助力も高く評価されます。iCarouselビューでシングルタップの画像をズームするには?
最初ににTapGestureRegcognizer
を入力してからaddSubview
を宣言してください。 、私のためにその作業
- (void)handleDoubleTap:(UIGestureRecognizer *)gestureRecognizer {
// zoom in
float newScale = [myscrollview zoomScale] * 2;
if (newScale > self.myscrollview.maximumZoomScale){
newScale = self.myscrollview.minimumZoomScale;
CGRect zoomRect = [self zoomRectForScale:newScale withCenter:[gestureRecognizer locationInView:gestureRecognizer.view]];
[myscrollview zoomToRect:zoomRect animated:YES];
}
else{
newScale = self.myscrollview.maximumZoomScale;
CGRect zoomRect = [self zoomRectForScale:newScale withCenter:[gestureRecognizer locationInView:gestureRecognizer.view]];
[myscrollview zoomToRect:zoomRect animated:YES];
}
}
- (CGRect)zoomRectForScale:(float)scale withCenter:(CGPoint)center {
CGRect zoomRect;
// the zoom rect is in the content view's coordinates.
// At a zoom scale of 1.0, it would be the size of the imageScrollView's bounds.
// As the zoom scale decreases, so more content is visible, the size of the rect grows.
zoomRect.size.height = [myscrollview frame].size.height/scale;
zoomRect.size.width = [myscrollview frame].size.width/scale;
// choose an origin so as to get the right center.
zoomRect.origin.x = center.x - (zoomRect.size.width/2.0);
zoomRect.origin.y = center.y - (zoomRect.size.height/2.0);
return zoomRect;
}
、あなたはUIImageViewシングルタップをクリックすると、その後、以下のメソッドを呼び出す
UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
[doubleTap setNumberOfTapsRequired:1];
[imageview addGestureRecognizer:doubleTap];
されているそのが参考に願っています:あなたのviewDidLoad
でこのコードを使用します。
こんにちは@Yyyappan、私はこれを試してみました..それは動作します、私が望むものはズームする "カルーセルビューの画像"です。 – iDeveloper