美文网首页
iOS 13适配总结

iOS 13适配总结

作者: cheng1314 | 来源:发表于2020-04-08 10:27 被阅读0次

    1、navigationController 当presentViewController模态弹出时候顶部留白问题

    原因是在ios 13 系统中 UIViewController的modalPresentationStyle属性 默认是最新UIModalPresentationAutomatic模式,而在iOS 13前的modalPresentationStyle默认是UIModalPresentationFullScreen。如果想继续使用全屏模式的话需要设置modalPresentationStyle。实现方式如下:

    - (UIModalPresentationStyle)modalPresentationStyle{
        return UIModalPresentationFullScreen;
    }
    

    创建一个UIViewController的分类,在.m文件中书写该代码即可完成设置modalPresentationStyle为全屏模式。

    2、iOS13中navBar设置背景颜色无效

    iOS13之前下面代码都能正常展示设置的颜色,但是在iOS13之后,导航条的图层发生了变化,backImg上面还有一层不透明的白色view。

    self.navigationController.navigationBar.translucent = NO;
            [self.navigationController.navigationBar setBackgroundImage:[UIImage imageWithColor:HEX_COLOR(@"FF3742")] forBarMetrics:UIBarMetricsDefault];
    

    解决办法:在最上层添加一个视图完成颜色展示。

    if ([[UIDevice currentDevice].systemVersion floatValue] >= 13.0) {
                [self.navigationController.navigationBar.subviews enumerateObjectsUsingBlock:^(__kindof UIView * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
                    if (idx == 0) {
                        
                        UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, SCREENWIDTH, TopBarHeight)];
                        view.backgroundColor = HEX_COLOR(@"FF3742");
                        [obj addSubview:view];
                    }
                    
                }];
            }
    
    持续更新中...

    相关文章

      网友评论

          本文标题:iOS 13适配总结

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