iOS15适配的那些事儿儿

1、首当其冲就是UITableVIew组间距

问题:iOS15新增了【sectionHeaderTopPadding】属性值,默认有一定的间距

解决:不需要间距的,sectionHeaderTopPadding设置为0即可

image

2、导航栏设置样式在iOS15系统上失效

问题:不通过UINavigationBarAppearance设置导航栏样式,在iOS15的系统上失效,UINavigationBarAppearance是iOS13引入的属性,当时iOS13没有做这个兼容,是没有问题的,更新Xcode之后,运行在iOS15上有问题

解决:如下所示

   if (@available(iOS 13.0, *)) {
        
        /**
         控制状态栏显示白色还是黑色,下面两句顺序不能调换,调换会失效
         */
        self.navigationController.navigationBar.overrideUserInterfaceStyle = UIUserInterfaceStyleDark;
        self.navigationController.navigationBar.barStyle = UIBarStyleBlack;
        
        
        /**
         导航栏上按钮的颜色
         */
        self.navigationController.navigationBar.tintColor = UIColor.blackColor;
        
        
        UINavigationBarAppearance *appearance = [UINavigationBarAppearance new];
        [appearance configureWithOpaqueBackground];
        
        appearance.backgroundColor = UIColor.lightGrayColor;
        /**
         backgroundImage的优先级高于backgroundColor
         */
        appearance.backgroundImage = [UIImage imageWithColor:UIColor.purpleColor];
        
        /**
         标题显示颜色
         */
        appearance.titleTextAttributes = @{NSForegroundColorAttributeName:UIColor.whiteColor};
        
        self.navigationController.navigationBar.standardAppearance = appearance;
        /**这句代码不写,以上appearance的设置均不生效*/
        self.navigationController.navigationBar.scrollEdgeAppearance = appearance;
        
    }
效果截图
相关代码及对应效果截图

后续出现适配相关,会及时补充,欢迎留言讨论~

你可能感兴趣的:(iOS15适配的那些事儿儿)