美文网首页
关于iPhone适配的问题

关于iPhone适配的问题

作者: 耽于幽夜 | 来源:发表于2018-10-29 09:27 被阅读0次

    iPhone X出来后,由于“刘海”的问题,给开发者门带来的一个麻烦就是屏幕的适配;现在iPhone X系列也出来了,又要进行一次适配。大部分人还是选择利用屏幕的尺寸或像素来进行适配如:

    define IPHONE_IS_X ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) && !UI_IS_IPAD : NO)

    define IPHONE_IS_XR ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size) && !UI_IS_IPAD : NO)

    define IPHONE_IS_XS_MAX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) && !UI_IS_IPAD : NO)

    本人觉得利用这些来判断比较麻烦,因为iPhone X系列都有一个相同点,就是iOS11以后出来的安全区特性,因此我们可以根据这一特性来进行屏幕的适配

    define IPHONE_IS_X_ALL safeAreaInsets().bottom>0?YES:NO

    UIEdgeInsets safeAreaInsets(void) {

    UIEdgeInsets safeAreaInsets = UIEdgeInsetsZero;
    
    if (@available(iOS 11.0, *)) {
    
        safeAreaInsets = [[[[UIApplication sharedApplication] delegate]window]safeAreaInsets];
    
    }
    
    return safeAreaInsets;
    

    }

    相关文章

      网友评论

          本文标题:关于iPhone适配的问题

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