屏幕旋转
第一步
在 AppDelegate.h
里增加一个属性
@property (nonatomic, assign) NSInteger allowRotation;
用来区分哪个界面可以横屏
哪个界面不可以
第二步
在 AppDelegate.m
里增加一个方法
-(UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{ if(self.allowRotation==1) { return UIInterfaceOrientationMaskAll; } else { return UIInterfaceOrientationMaskPortrait; }}
第三步
在需要横屏的界面调用以下代码即可
AppDelegate * appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate; appDelegate.allowRotation = 1; [[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIInterfaceOrientationPortrait] forKey:@'orientation']; [[UIDevice currentDevice] setValue:[NSNumber numberWithInteger: UIDeviceOrientationLandscapeRight] forKey:@'orientation']; [[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIDeviceOrientationPortraitUpsideDown] forKey:@'orientation']; [[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIDeviceOrientationLandscapeLeft] forKey:@'orientation'];
Demo地址:https://github.com/YouZhiZheShiJingCheng/revolve/tree/master