0

我有一个可以在屏幕上拖动的图像视图,我添加了一个滑块来更改图像视图的大小并且它可以工作,但是当我更改大小时,图像视图总是返回到原始位置,并且它不再在我的位置拖了,有什么问题?这是我更改大小的代码

- (IBAction)sizePhoto:(UISlider *)sender {
[_imagen1 setTransform:CGAffineTransformMakeScale(sender.value, sender.value)];}

这就是我拖动图像的方式

CGPoint translation = [recognizer translationInView:_photo];

recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x,
                                     recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:_photo];

这就是我旋转图像的方式

recognizer.view.transform = CGAffineTransformRotate(recognizer.view.transform, recognizer.rotation);
recognizer.rotation = 0;
4

2 回答 2

0

这个想法是将当前转换与更改结合起来,因此它保留了用户已经完成的操作。您在旋转时正确执行此操作。用同样的方式做规模:

_imagen1.transform = CGAffineTransformScale(_imagen1.transform, scaleFactor, scaleFactor);
于 2013-11-08T17:39:35.700 回答
0
// pass your slider value: below code


 CGFloat scale = slider.value;
 CGAffineTransform theTransform = CGAffineTransformMakeScale(scale, scale);
  myImageView.transform = theTransform;
于 2018-04-11T05:53:54.670 回答