(の代わりに)UISlider
をズームするための があり、 を使用しています。どちらも独立して正常に動作します。しかし、回転を実行してズームインまたはズームアウトすると、回転スケールが失われるため、奇妙な動作になります(それが私の推測です!) これを修正するにはどうすればよいですか?imageView
UIPinchGesture
UIRotationGesture
imageview
数日以来、これに苦労しているこの数学の問題が苦手で、フォーラムを検索しても解決策が見つかりませんでした。親切に私を助けてください:)
ズームの場合:(ここでは、わからないので変換を処理していません)
-(void)scale:(UISlider *)sender
{
float sliderValue = [sender value];
CGRect newFrame = placeRing.frame;
newFrame.size = CGSizeMake(sliderValue, sliderValue);
placeRing.frame = newFrame;
}
回転の場合:
- (void)twoFingersRotate:(UIRotationGestureRecognizer *)recognizer
{
isRotated = TRUE;
if ([recognizer state] == UIGestureRecognizerStateBegan || [recognizer state] == UIGestureRecognizerStateChanged) {
rotation= recognizer.rotation;
rotatedTransform = CGAffineTransformRotate([placeRing transform], [recognizer rotation]);
placeRing.transform = rotatedTransform;
[recognizer setRotation:0];
}
}