我有一个电子书阅读器应用程序,其中,我需要根据页面的布局以编程方式调整设备方向...即,设备应支持某些页面的所有方向,并且仅支持其他页面的横向。无论如何,我可以以编程方式强制进行方向更改
答案 0 :(得分:1)
您可以使用jbat100的答案以及在UIApplication中调用setStatusBarOrientation:animated
来实现此效果。
答案 1 :(得分:1)
请注意,从iOS 6.0开始,此行为已更改。有关详细信息,请参阅:Autorotate in iOS 6 has strange behaviour
要点是应该/将要/ / / /等已被弃用,并且已被更清晰,更动态的实现所取代。我们都应该感恩。
答案 2 :(得分:0)
您无法将设备方向强制为某个值,系统会告诉您设备的方向,而不是相反的方向。您可以使用CGAffineTransform
等(相关帖子here)旋转您的观看次数。
答案 3 :(得分:0)
实际上你可以强迫任何轮换。至少我能够做到。我使用的解决方案:https://stackoverflow.com/a/10146270/894671
答案 4 :(得分:0)
这适用于Xcode 6& 5。
- (BOOL)shouldAutorotate {return YES;}
- (NSUInteger)supportedInterfaceOrientations {return (UIInterfaceOrientationMaskPortrait);}
答案 5 :(得分:0)
NSNumber *value = [NSNumber numberWithInt:UIInterfaceOrientationLandscapeRight];
[[UIDevice currentDevice] setValue:value forKey:@"orientation"];
这可以通过编程方式将设备方向设置为LandscapeRight。