关于视频旋转shouldAutorotateToInterfaceOrientation,supportedInterfaceOrientations不调用问题
项目需求是某一个界面强制横竖屏,今天试了好多方法,看网上说的也没有解决我的问题,后来经过实验,成功解决,方法如下:
网上找了很多种说法,如下:
关于shouldAutorotateToInterfaceOrientation不执行问题
也有说是问题在info.plist里面的
但这并不能解决我的问题
我的项目里面是吧导航栏封装到父类里面了,所以父类里面给做了限制🚫
1,修改导航栏的父类
2,修改弹出方式
/**
* 说明:播放器父类是UIView。
屏幕锁屏方案需要用户根据实际情况,进行开发工作;
如果viewcontroller在navigationcontroller中,需要添加子类重写navigationgController中的 以下方法,根据实际情况做判定 。
*/
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation{
if (self.isLock) {
return toInterfaceOrientation =
UIInterfaceOrientationPortrait;
}else{
return YES;
}
return (toInterfaceOrientation == UIInterfaceOrientationPortrait);
}
- (BOOL)shouldAutorotate{
return !self.isLock;
}
-(UIInterfaceOrientationMask)supportedInterfaceOrientations{
if (self.isLock) {
return UIInterfaceOrientationMaskLandscapeRight;
}else{
return UIInterfaceOrientationMaskPortrait|UIInterfaceOrientationMaskLandscapeLeft|UIInterfaceOrientationMaskLandscapeRight;
}
}
[self presentViewController:playVideoVC animated:YES completion:nil];
希望对你有帮助!