質問

アプリには、ランドスケープモードのみをサポートするメインメニューがあります。設定してランドスケープ制限を実装します UIRootViewController::shouldAutorotateToInterfaceOrientation:...そして、私はポートレートモードのサポートを備えた別のシーンを持っています。したがって、問題は、ポートレートモードで別のシーンからメインメニューに渡すと表示されます。アプリは自動的にランドスケープに回転せず、手動で回転するコードメソッドが見つかりません。

解決策はありますか?感謝するでしょう。

編集:すみません、詳細を追加するのを忘れました。 rootViewControllerは、メニューと別のシーンに一般的です。さらに - これらのシーンは1つの一般的なビューにあります(私のアプリはOpenGLを使用しています)ので、ポートレートシーンからメニューを入力する前に設定しました UIRootViewController::shouldAutorotateToInterfaceOrientation: ランドスケープのみでイエスを返すため。

役に立ちましたか?

解決

ポートレートサポートを備えた他のシーンが別のuiviewcontrollerによって制御されている場合、そのビューコントローラーのshouldautorotatointerfaceorientation:その動作を定義することができます。多くの場合、これだけで十分です。もちろん、一部のビューコントローラーではなく、他のものではないために派手なローテーションを行う必要がある場合、物事は少し難しくなります。

他のヒント

これを行う簡単な方法はありません。ただし、[uidevice setOrientation:]は、開発者に開かれておらず、Appleによるアプリケーションの拒否につながります。

レイヤーに回転を適用できます。これにより、まったく同じ効果が生まれます。

myview.layer.transform = CATransform3DMakeRotation(M_PI/2, 0.0f, 0.0f, 1.0f);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top