在我的应用程序中,我有一个UIImageView位于UIScrollView内部。我想要缩放和拖动UIImageView。我已经成功实现了缩放,但是我无法找到一种使用touchesMoved在UIScrollView内部拖动图像的方法。我已经在Google上搜索过,但似乎我找到的唯一方法只适用于iOS 3.0+,但在iOS 4.0+中已经过时。那么我该如何使用手指拖动位于UIScrollView内部的图像呢?
在我的应用程序中,我有一个UIImageView位于UIScrollView内部。我想要缩放和拖动UIImageView。我已经成功实现了缩放,但是我无法找到一种使用touchesMoved在UIScrollView内部拖动图像的方法。我已经在Google上搜索过,但似乎我找到的唯一方法只适用于iOS 3.0+,但在iOS 4.0+中已经过时。那么我该如何使用手指拖动位于UIScrollView内部的图像呢?
你不需要自己进行任何触摸检测。UIScrollView 可以处理一切。
这是一个例子:
- (void)viewDidLoad
{
[super viewDidLoad];
scrollView = [[UIScrollView alloc] initWithFrame:self.view.bounds];
scrollView.delegate = self;
[self.view addSubview:scrollView];
imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"test.jpg"]];
scrollView.contentSize = imageView.bounds.size;
[scrollView addSubview:imageView];
float minScale = scrollView.frame.size.width / imageView.frame.size.width;
scrollView.minimumZoomScale = minScale;
scrollView.maximumZoomScale = 2.0;
scrollView.zoomScale = minScale;
}
别忘了添加这个委托方法以启用缩放:
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
return imageView;
}