屏幕旋转

    技术2022-07-10  94

    第一步

    在 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

    Processed: 0.031, SQL: 9