私は、常に横向きでなければならない1つのビューを除いて、横向きと縦向きの両方で動作する必要があるiOSアプリに取り組んでいます。ので、私は持っています:
-(BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
return (toInterfaceOrientation == UIInterfaceOrientationLandscapeRight) || (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft);
}
アプリケーションをランドスケープ モードで起動し、このビューに到達してデバイス (iPad) を回転させると、このメソッドが呼び出されて false が返されるため、インターフェイスは回転しません。
しかし、縦向きでこのビューに到達すると、このメソッドが呼び出されて false が返されますが、向きは変わりません。このコンテキストでは、デバイスを横向きに回転すると、メソッドは true を返し、インターフェースは適切に回転します。再度縦向きに回転しようとすると、このメソッドは false を返し、インターフェースは横向きのままになります。
このビューに初めてアクセスしたときに、デバイスが縦向きの場合、インターフェイスが横向きに変わるようにするにはどうすればよいですか?
また、私は
- (NSUInteger)supportedInterfaceOrientations
しかし、それは決して呼び出されません。
前もって感謝します!