最近、 のサブクラスであるカスタム Alert を作成しましたUIWindow
。UIViewController
が横向きのときにアラートを回転させようとしています。正常に回転できますが、原点が画面の左上隅になるように再配置するのに問題があります。私は以下のコードを持っています:
CGRect mainScreenBounds = [[UIScreen mainScreen] bounds];
UIDeviceOrientation deviceOrientation = [[UIApplication sharedApplication] statusBarOrientation];
if (deviceOrientation == UIDeviceOrientationPortrait)
{
self.frame = CGRectMake(0,0, mainScreenBounds.size.width, mainScreenBounds.size.height);
}
else
{
self.frame = CGRectMake(0,0, mainScreenBounds.size.height, mainScreenBounds.size.width);
if (deviceOrientation == UIDeviceOrientationLandscapeLeft)
{
self.transform = CGAffineTransformRotate(self.transform, M_PI / 2);
}
else
{
self.transform = CGAffineTransformRotate(self.transform, -M_PI / 2);
}
self.center = CGPointMake(self.bounds.size.width / 2, self.bounds.size.height / 2);
}
を設定しcenter
ても、なんらかの理由で何もしないようです。ここで私が間違っている可能性があることについて、誰かが何か手がかりを持っていますか?