1.首先可以自定义一个NavigationController,例如:
2.让应用中的所有Nav继承自这个NavigationController,并且给这个NavigationController一个属性,例如:
3.在NavigationController中重写下面两个方法 在需要横屏的时候,根据InStyle属性强制屏幕就好。
-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation{
if (self.InStyle==0) return UIInterfaceOrientationPortrait; //竖屏
else if(self.InStyle==1) return UIInterfaceOrientationLandscapeRight; //横屏
else if(self.InStyle==2) return UIInterfaceOrientationLandscapeLeft;
else return UIInterfaceOrientationPortrait;
}
-(UIInterfaceOrientationMask)supportedInterfaceOrientations{
if (self.InStyle==0) return UIInterfaceOrientationMaskPortrait;
else if(self.InStyle==1) return UIInterfaceOrientationMaskLandscapeRight;
else if(self.InStyle==2) return UIInterfaceOrientationMaskLandscapeLeft;
else return UIInterfaceOrientationMaskPortrait;
}