これまで同様の質問がありましたが、これはより具体的な使用例です(静的ライブラリからの方向制御、ルートビューコントローラへの書き込みはできません)。iOSポートレートの向きを静的ライブラリから1つのビューコントローラのみに変更
私は、渡されたビューコントローラ(クライアントのルートビューコントローラ)にオーバーレイとしてUI要素をサブビューとして追加する静的ライブラリを持っています。問題は私たちのUI要素がポートレイト方向のみをサポートし、クライアントのアプリケーションがポートレイトとランドスケープの両方をサポートすることです。クライアントのビューでUI要素が自動回転しない限り、これは問題ありません。
オリエンテーションをポートレートに固定するのは、View Controllerのみです。私は、ルートビューコントローラで同じコードを配置する場合、それは完璧に動作
-(BOOL)shouldAutorotate{
return NO;
}
-(NSInteger)supportedInterfaceOrientations{
NSInteger orientationMask = 0;
if ([self shouldAutorotateToInterfaceOrientation: UIInterfaceOrientationPortrait])
orientationMask |= UIInterfaceOrientationMaskPortrait;
return orientationMask;
}
:私は私のライブラリのビューコントローラに次のコードを使用するときのiOS 6では、それがすべてで自動回転の動作には影響しません。アプリは自動回転しなくなりました。しかし、プロダクションではクライアントのルートビューコントローラにアクセスできないため、これはオプションではありません。ルートビューコントローラではなくビューの方向をロックする方法、または単一のビューコントローラに対してのみ方向をロックする方法はありますか?私が必要とするものを達成するための他の方法は、私が考えていないのですか? iOSで動作するソリューションのための願望
? –
あなたは解決策を見つけたことがありますか? –