不幸的是,我在stackoverflow上找不到任何有关我的问题的信息,或者我只是使用了错误的关键字。
我想要一个可以被用户移动和增加或减少的视图。参见图片作为参考。有4个锚点,用户可以使用它们来定义矩形的框架。
您能帮忙找到一种简单的方法来实现这一目标吗?
非常感谢德国的问候,
克里斯
最佳答案
使用这个我已经将其用于imageview,但是您可以将其更改为UIView并确保该视图的userInterAction为True
在.h文件中声明
CGFloat lastScale;
在viewDidLoad中:
UIPinchGestureRecognizer *pinchRecognizer = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(scale:)];
[pinchRecognizer setDelegate:self];
[imgRotate addGestureRecognizer:pinchRecognizer];
-(void)scale:(id)sender
{
if([(UIPinchGestureRecognizer*)sender state] == UIGestureRecognizerStateEnded)
{
lastScale = 1.0;
return;
}
CGFloat scale = 1.0 - (lastScale - [(UIPinchGestureRecognizer*)sender scale]);
CGAffineTransform currentTransform = [(UIPinchGestureRecognizer*)sender view].transform;
CGAffineTransform newTransform = CGAffineTransformScale(currentTransform, scale, scale);
[[(UIPinchGestureRecognizer*)sender view] setTransform:newTransform];
[imgRotate setTransform:newTransform];
lastScale = [(UIPinchGestureRecognizer*)sender scale];
}