1.常规设置屏幕旋转 (Device Orientation || info.plist-----这两个地方的设置是同步的)
1)targets->General->Deployment Info->Device Orientation 直接勾选想要的设备定位全局属性
2)Supporting Files->Info.plist->Supported interface orientations 增删属性值
2.个别页面强制横竖屏
新建一个NavigationController类
实现下面三个方法
-(BOOL)shouldAutorotate
{//是否支持自动旋转
return YES;
}
-(NSUInteger)supportedInterfaceOrientations
{//支持的旋转方向
return [self.viewControllers.lastObject
supportedInterfaceOrientations];
}
-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{//进入界面后的默认方向
return [self.viewControllers.lastObject
preferredInterfaceOrientationForPresentation];
}
如果push出的ViewController需要改变屏幕方向横屏或者竖屏
在当前的ViewController中重写这三个方法,但是如果NavigationController中实现了shouldAutorotate这个方法,则在ViewController中不再执行重写的shouldAutorotate方法。
-(BOOL)shouldAutorotate
{//是否支持自动旋转
return YES;
}
-(NSUInteger)supportedInterfaceOrientations
{//支持的旋转方向
return (枚举值);
}
-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{//进入界面后的默认方向
return (枚举值);
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步