Uiview 如何使用CGAffineTransform移动和旋转视图?
我想使用平移手势识别器移动视图Uiview 如何使用CGAffineTransform移动和旋转视图?,uiview,uigesturerecognizer,cgaffinetransform,Uiview,Uigesturerecognizer,Cgaffinetransform,我想使用平移手势识别器移动视图 UIPanGestureRecognizer *gesture; CGPoint touch = [gesture locationInView:view.superview]; view.frame = CGRectMake(touch.x, touch.y, view.frame.size.width, view.frame.size.height); 此外,我希望在视图移动时旋转视图 view.transform = CGAffineTransform
UIPanGestureRecognizer *gesture;
CGPoint touch = [gesture locationInView:view.superview];
view.frame = CGRectMake(touch.x, touch.y, view.frame.size.width, view.frame.size.height);
此外,我希望在视图移动时旋转视图
view.transform = CGAffineTransformMakeRotation(multiplier * M_2_PI);
我有两个基本问题:
有人能给我一个关于如何使用CGAffineTransform解决这些问题的非常基本的代码示例,而不是去阅读这些和那些吗?您可以在这里找到代码示例 主要思想是
if (_panRecognizer.state == UIGestureRecognizerStateBegan)
{
_startCenter = _frameView.center;
}
else if (_panRecognizer.state == UIGestureRecognizerStateChanged)
{
CGPoint transition = [_panRecognizer translationInView:self.view];
CGPoint newCenter = CGPointMake(_startCenter.x + transition.x, _startCenter.y + transition.y);
self.frameView.center = newCenter;
}
else
{
}
及
可能重复的否,它不是重复的。
CGAffineTransform transform = self.frameView.transform;
self.frameView.transform = CGAffineTransformIdentity;
self.frameView.frame = CGRectInset(self.view.bounds, CGRectGetWidth(self.view.bounds) / 3.0, CGRectGetHeight(self.view.bounds) / 3.0);
self.frameView.transform = transform;