後、私は私は私がCGAffineTransformScaleは、デバイスの回転
を使用して元にこのバックを元に戻すことができ、デバイスを回転させない場合originalTransform = self.appContainer.transform;
self.appContainer.transform = CGAffineTransformMakeScale(.8, .8);
に変換を行っていますビューを持っている修正
self.appContainer.transform = CGAffineTransformScale(originalTransform, 1, 1);
残念ながら、デバイスを回転すると、ビューの変換行列がビューの回転によって変更され、元の縮尺が分割されます。ローテーション後に縮尺を元に戻すと、元のフルサイズに戻らないUIView
が残されます。
私は、元の変換行列と新しいものとの間で計算を行う必要があることを確信しているが、私はこれを行う方法がわからないと思います。私はこの仕事をするために行うことができた唯一のものは、回転前の1に戻って
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
self.appContainer.transform = CGAffineTransformScale(originalTransform, 1, 1);
}
を縮尺を元に戻す。そしてこれが行う
-(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
self.appContainer.transform = CGAffineTransformMakeScale(.8, .8);
}
た後、新たに修正変換でそれを再スケールすることです私の期待通りに機能しますが、フルスクリーンに戻って0.8スケールに戻す代わりに、新しい変換から正しい.8スケールに移行したいと思います。
は、あなたが最終的にこれを取り扱うことがありますか?私は解決策を探しています。 –
解決策も探しています。 – Pipiks