美文网首页ui问题互联网科技
iOS 强制转屏 强制横屏 强制竖屏

iOS 强制转屏 强制横屏 强制竖屏

作者: coco_CC | 来源:发表于2017-07-19 17:40 被阅读174次

    今天项目中遇到正在看视频的时候账号被挤,如果当时是横屏的情况下,需要强制竖屏。真头疼,网上找了好多方法,终于解决啦。O(∩_∩)O~

    强制横屏:

    [self interfaceOrientation:UIInterfaceOrientationLandscapeRight];
    

    强制竖屏:

    [self interfaceOrientation:UIInterfaceOrientationPortrait];
    

    强制转屏

    - (void)interfaceOrientation:(UIInterfaceOrientation)orientation
    {
        if ([[UIDevice currentDevice] respondsToSelector:@selector(setOrientation:)]) {
            SEL selector  = NSSelectorFromString(@"setOrientation:");
            NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[UIDevice instanceMethodSignatureForSelector:selector]];
            [invocation setSelector:selector];
            [invocation setTarget:[UIDevice currentDevice]];
            int val = orientation;
            // 从2开始是因为0 1 两个参数已经被selector和target占用
            [invocation setArgument:&val atIndex:2];
            [invocation invoke];
        }
    }
    

    相关文章

      网友评论

      • ArchLL:强制竖屏不管用啊
        coco_CC:@Mint丶bin 你看一下你的plist,是限制只能竖屏展示了吗?"Supported interface orientations"这个是全局设置,你查看下是不是别的地方有做限制竖屏展示了。
        ArchLL:支持 竖屏和横屏
        coco_CC:target里的Device Orientation你是怎么设置的?

      本文标题:iOS 强制转屏 强制横屏 强制竖屏

      本文链接:https://www.haomeiwen.com/subject/vstrkxtx.html