web-dev-qa-db-ja.com

UIImageViewを20度回転させるにはどうすればよいですか?

UIImageViewを回転させる必要がある場合、何をしなければなりませんか? 20度回転させたいUIImageがあります。

Apple docsは変換マトリックスについて説明していますが、それは難しいように聞こえます。それを達成するための有用なメソッドや関数はありますか?

46
Thanks

変換マトリックスは非常に難しくありません。提供されている機能を使用する場合、非常に簡単です。

imgView.transform = CGAffineTransformMakeRotation(.34906585);

(.34906585はラジアンで20度です)

92
Ed Marty

右に回したい場合、左に回転させたい場合、値は0より大きくなければなりません。値は記号「-」で示されます。たとえば、-20。

CGFloat degrees = 20.0f; //the value in degrees
CGFloat radians = degrees * M_PI/180;
imageView.transform = CGAffineTransformMakeRotation(radians);

スウィフト4:

let degrees: CGFloat = 20.0 //the value in degrees
let radians: CGFloat = degrees * (.pi / 180)
imageView.transform = CGAffineTransform(rotationAngle: radians)
106
alexmorhun

Swiftバージョン:

let degrees:CGFloat = 20
myImageView.transform = CGAffineTransformMakeRotation(degrees * CGFloat(M_PI/180) )
10
xscoder

Swift 4.

imageView.transform = CGAffineTransform(rotationAngle: CGFloat(20.0 * Double.pi / 180))
4
William Hu

Swift 3。

extension UIImageView {

    func rotate(degrees:CGFloat){
        self.transform = CGAffineTransform(rotationAngle: degrees * CGFloat(M_PI/180))
      }  
    }

使用法:

myImageView.rotate(degrees: 20)
2
JP Aquino

これは簡単なフォーマットの例です(20度の場合):

CGAffineTransform(rotationAngle: ((20.0 * CGFloat(M_PI)) / 180.0))
1
Alex Bailey
 _ YourImageView.transform = CGAffineTransformMakeRotation(1.57); 

ここで、1.57は90度のラジアン値です

1
Radix