0

このサイトで同様の質問をたくさん見つけましたが、どちらも私の問題を完全には解決しませんでした。

私の ViewController はランドスケープ モードであり、UIAlertView を同じモードで表示したいと考えています。ここでいくつかの答えを見つけましたが、縦向きモードで表示した後にのみ UIAlertView を回転させます。

これは私が使用するコードです:

 - (void)didPresentAlertView:(UIAlertView *)alertView
 {
 // UIAlertView in landscape mode

 [UIView beginAnimations:@"" context:nil];
 [UIView setAnimationDuration:0.1];
 alertView.transform = CGAffineTransformRotate(alertView.transform, 3.14159/2);
 [UIView commitAnimations];
 }

UIViewController をランドスケープ モードに回転させるために、次のコードを使用しました。

 - (BOOL)shouldAutorotate {

UIInterfaceOrientation orientation = [[UIDevice currentDevice] orientation];

if (orientation==UIInterfaceOrientationLandscapeRight) {
    // do some sh!t
}

return YES;
}

-(NSUInteger)supportedInterfaceOrientations{
   return UIInterfaceOrientationMaskLandscapeRight;
}
4

0 に答える 0