在解释如何使用 UIPanGestureRecognizer move UIImageView 时,这个网站非常有帮助,但我有一个程序需要 move (即平移)多个 UIImageView,而且我一生都可以'找不到如何做到这一点的示例。
我知道将 UIPanGestureRecognizer 分配给 UIView,但我无法在 UIView 内平移任何 UIImageView,我只知道代码只能平移一个 UIImageView 与 UIView,如下面的代码所示。
这是我使用的代码。
- (void)viewDidLoad {
UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc]initWithTarget:self actionselector(move];
[panRecognizer setMinimumNumberOfTouches:1];
[panRecognizer setMaximumNumberOfTouches:1];
[_canvas addGestureRecognizer:panRecognizer];
[super viewDidLoad]; }
-(void)moveid)sender {
CGPoint translatedPoint = [(UIPanGestureRecognizer*)sender translationInView:_canvas];
if([(UIPanGestureRecognizer*)sender state] == UIGestureRecognizerStateBegan) {
_firstX = [photoImage center].x;
_firstY = [photoImage center].y;
}
translatedPoint = CGPointMake(_firstX+translatedPoint.x, _firstY+translatedPoint.y);
[photoImage setCenter:translatedPoint]; }
我可以平移一个名为 photoImage 的 UIImageView,但知道平移多个 UIImageView 的代码是什么样的。
提前感谢您的帮助。
Best Answer-推荐答案 strong>
您应该将手势识别器添加到所有图像而不是 _canvas。
并将这些 View 的 userInteractionEnabled 设置为 YES
[imageView setUserInteractionEnabled:YES];
[imageView addGestureRecognizer:panRecognizer];
关于ios - 如何使用 UIPanGestureRecognizer move 2 个或更多 UIImageViews,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/8212792/
|