美文网首页
iOS11适配遇到的问题

iOS11适配遇到的问题

作者: 大兵布莱恩特 | 来源:发表于2017-11-28 17:10 被阅读66次

    最近写一个拼车项目,马上提交测试了发现在 iOS10上边很多地方崩溃,由于笔者所有 UI界面都是用 xib 完成的,导致 iOS11一些新的特性,没有办法在 iOS10上使用,具体如下.

    1 使用到 New Color Set 导致运行在 iOS10上边崩溃

    Terminating app due to uncaught exception 'NSInvalidUnarchiveOperationException',
     reason: 'Could not instantiate class named _UIColorAttributeTraitStorage'
    
    
    image.png

    虽然我在代码层面做过了版本适配 ,但是xib 上的就没法使用了,所幸 xib 中使用到 New Color Set 地方不多,很快就替换成16进制颜色.

    image.png

    2 UITableViewCell高度在 iOS10上边不正确
    iOS11我使用的是 safeArea Autolayout tableView 高度都是交给系统去计算 ,设置UITableViewCell高度为 UITableViewAutomaticDimension.

    image.png

    这个问题也好解决 ,由于我所有 TableView 都是在 YVBaseViewController 里边创建,只需要在YVBaseViewController里边添加如下代码即可解决问题.

    image.png

    总结 : 之前一直未在 iOS10上边运行,导致今天发现 iOS10上边会出现崩溃,除了要不Assets.xcassets里边的 Color Set 删除外,其他方面改动不大.笔者由于所有地方UI 界面都是在 xib 上完成,所以修复时候只需要针对 xib文件即可.

    写在最后笔者还是推荐使用 IB 来搭建 UI 界面,高效快速搞定界面布局,将主要精力用在业务逻辑方面. 业务功能采用继承和多态可以减少很多重复代码, xib 其实也可以通过复制粘贴快速创建的,让 UI 界面不再花去你大量时间.

    好了,我是大兵布莱恩特,欢迎加入博主技术交流群,iOS 开发交流群

    QQ20180712-0.png

    相关文章

      网友评论

          本文标题:iOS11适配遇到的问题

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