横向きモードでのみ表示されるように作成されたビューがあり、正常に機能しています。ただし、アプリをバックグラウンドに送信してから再開すると、通知センターはアプリを再開したときのデバイスの向き(通常はポートレートモード)で表示されるため、左から右へのスワイプを検出すると通知センターが表示されることがあります現れる。通知センターをランドスケープモードで表示する必要があることをシステムに知らせる方法はありますか?
編集:ビューは本来あるべき横向きモードで表示されます。問題は通知センターにのみあります。
ステータスバーの向きを設定すると、アプリの向きが設定されます。Alerts、NotificationCenterはすべて、方向として[UIApplicationsharedApplication].statusbarOrientationを使用します。
-(BOOL)shouldAutorotateToInterfaceOrientationがすべてを実行する必要がありますが、そうでない場合は、自分で方向を設定できます。
メソッドでポートレートモードが機能するのをプログラムで停止できますshouldAutorotateToInterfaceOrientation。次のコードはその方法です。
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
if (interfaceOrientation == UIInterfaceOrientationLandscapeRight || interfaceOrientation == UIInterfaceOrientationLandscapeLeft){
return YES;
}
else {
return NO;
}
}