iOS 6以下横竖屏幕,在ViewController中重写方法
- -(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation{
- // 系统宏定义只横屏幕
- return UIDeviceOrientationIsLandscape(toInterfaceOrientation);
- // 系统宏定义只竖屏幕
- return UIDeviceOrientationIsPortrait(toInterfaceOrientation);
- // 也可以自己实现只竖屏幕,home键在下面
- return (toInterfaceOrientation == UIDeviceOrientationPortrait);
- // 也可以自己实现只竖屏幕,home键在上面
- return (toInterfaceOrientation == UIDeviceOrientationPortraitUpsideDown);
- // 也可以自己实现只竖屏幕,home键在右面
- return (toInterfaceOrientation == UIDeviceOrientationLandscapeLeft);
- // 也可以自己实现只竖屏幕,home键在左面
- return (toInterfaceOrientation == UIDeviceOrientationLandscapeRight);
- }
iOS 6以上,在AppDelegate中设置,设置后需要在Target》Summary》Support Interface Orientations设置屏幕,不设置相同的屏幕会导致闪退
- #if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_6_0
- -(NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{
- // 竖屏home键在下面
- return UIInterfaceOrientationMaskPortrait;
- // 横屏home键在右边
- return UIInterfaceOrientationMaskLandscapeLeft;
- // 横屏home键在左边
- return UIInterfaceOrientationMaskLandscapeRight;
- // 竖屏home键在上面
- return UIInterfaceOrientationMaskPortraitUpsideDown;
- // 横屏
- return UIInterfaceOrientationMaskLandscape;
- // 四向翻转
- return UIInterfaceOrientationMaskAll;
- // 除竖屏,三向翻转
- return UIInterfaceOrientationMaskAllButUpsideDown;
- }
- #endif
转载于:https://blog.51cto.com/120423319/1122367