美文网首页
iOS系统差异

iOS系统差异

作者: 冰风v落叶 | 来源:发表于2019-02-12 14:17 被阅读3次

    1. 在使用automaticDimension自动计算高度时,iOS10和iOS12有所差异:

      tableView.rowHeight = UITableView.automaticDimension
      `如果不写estimatedRowHeight,在iOS12上显示正常,iOS10上就会显示不出来`
      tableView.estimatedRowHeight = 50
    
    10异常,12正常.jpeg

    总结 : 使用automaticDimension时,必须加上estimatedRowHeight

    2. 在使用安全区域时,iOS10和iOS12有所差异:

    例如:设置控件距离顶部安全区域的约束为0,
    在iOS10中,控件的Y坐标为0
    在iOS12中,控件的Y坐标为20/64

    10异常,12正常.jpeg
    总结:为了适配多系统,最好不要使用安全区域来控制顶部距离;
    想控制顶部的距离,可以先设置一个距离顶部的约束,然后根据机型的不同,调整约束为导航栏的高度

    3. 使用UIScrollView及其子类的时候,要注意iOS10系统和iOS12之间的差异:

    `如果不加下面代码,在iOS10就会出现异常布局`
    if #available(iOS 11.0, *) {
        imageCollectionView.contentInsetAdjustmentBehavior = .never
    } else {
        self.automaticallyAdjustsScrollViewInsets = false
    }
    
    10异常,12正常.jpeg
    总结:当界面中有ScrollView及其子类的时候,最好将automaticallyAdjustsScrollViewInsets手动赋值,以避免不同系统带来的差异

    4.

    欢迎大家补充新的差异及导致这些差异的原因,2019共同进步!

    相关文章

      网友评论

          本文标题:iOS系统差异

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