Недавно я сделал заказное оповещение, которое является подклассом UIWindow
. Я пытаюсь повернуть предупреждение, когда UIViewController
находится в альбомной ориентации. Я могу повернуть его успешно, однако у меня возникли проблемы с его перемещением, чтобы его происхождение находилось в верхнем левом углу экрана. У меня есть следующий код ниже:Перемещение UIWindow после поворота
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
, кажется, не делать ничего по какой-либо причине. Кто-нибудь знает, что я могу делать неправильно здесь?
Мне нужен UIWindow, поэтому я могу поместить его в строку состояния, такую как UIAlertView. –
, если вы хотите, чтобы строка состояния исчезла, установите ее, чтобы она исчезла. – bshirley
Не хотите, чтобы это исчезло, вы знаете, как при появлении предупреждения появляется черный оттенок по экрану? Это то, что я собираюсь, и для этого нужен UIWindow. –