私は変換を使用することで新しいです。そして、彼らがどのように働いているのかまだ悩んでいました。UIImageViewの回転後のサイズが変更されるのはなぜですか?
私がやっていることは、与えられた角度で私のUIImageViewを回転させることです。しかし、回転した後、イメージのサイズが小さくなります。 ImageViewのスケーリングも行っていますので、逆さまになりません。 ImageViewが割り当てられたときに、CGRectMakeで与えられたサイズを回転して保持する方法は?
UIImageView *myImageView = [[UIImageView alloc]initWithFrame:CGRectMake(x,y,width,height)];
myImageView.contentMode = UIViewContentModeScaleAspectFit;
[myImageView setImage:[UIImage imageNamed:@"image.png"]];
myImageView.layer.anchorPoint = CGPointMake(0.5,0.5);
CGAffineTransform newTransform;
myImageView.transform = CGAffineTransformMakeScale(1,-1);
newTransform = CGAffineTransformRotate(newTransform, 30*M_PI/180);
[self.window addSubview:myImageView];
ありがとうございます!
実際に変更されているのは何ですか?あなたは、UIImageViewのフレームが変わったと話していますか?それとも、画像サイズの目に見える変化ですか?あなたはどのように変化を確認しましたか?ビューを回転すると、そのフレームは常に変化します。これは、フレームがスーパービュー内のビューのスペースを表しているためです。回転したビューの境界は同じままです。 –
touchesBeganにコードがあります: – MCKapur
@JohannesLumpe Imageのweidht、おそらく高さも変わります。はい、それは目に見える変化です。Imageはそのサイズが同じで、回転する前にはるかに小さくなっています。 – User1234