iOS开发 适配iOS11

作者: 徐不同 | 来源:发表于2017-09-18 14:28 被阅读1377次

    1.相册权限需要增加,不然会造成闪退哟

    增加info.Plist中的字段:
    之前的这个字段:Privacy - Photo Library Usage Description
    需要增加这个字段Privacy - Photo Library Additions Usage Description,内容和上面字段保持一致即可。

    2. automaticallyAdjustsScrollViewInsets的问题

    在iOS11的系统中,原先的automaticallyAdjustsScrollViewInsets属性(该属性在UIViewController中),如下图:


    image.png

    该属性已经废弃了。新的属性(该属性在UIScrollView.h中)如下图:

    image.png

    这个属性值是一个枚举,如下图:

    image.png

    如果我们要保持之前的写法,需要这么写。

    image.png

    考虑到新的属性,在不同的文件中,我抽取了个宏定义方便大家使用:

    #define  adjustsScrollViewInsets_NO(scrollView,vc)\
    _Pragma("clang diagnostic push") \
    _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"") \
    if (@available(iOS 11.0,*))  {\
    scrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;\
    } else {\
    self.automaticallyAdjustsScrollViewInsets = NO;\
    }\
    _Pragma("clang diagnostic pop") \
    

    使用方法:
    1.传入一个ScrollView
    2.传入一个控制器
    原因:新增加的属性在UIScrollView.h中了,原先是在控制器中的哟。

        adjustsScrollViewInsets_NO1(self.tableView, self);
    

    3.iPhoneX的适配(预计Apple未来会解决)

    在iPhoneX的显示上,目前有一下问题,需要大家注意:
    1.原先状态栏20,导航栏44,现在要处理下,变成84,增加20的高度,不然效果很丑。
    2.横屏状态下,左侧会有所遮挡,如果大家在左侧有按钮,需要处理下。

    image.png

    3.底部左右两侧变圆角
    如果原先屏幕最下方有“导航条”的话,需要处理。

    4.搜索框占位文字下移的问题

    只要之前frame写的对,就不会出现这个问题。
    有问题的话,重新写一下占位文字的frame。

    image.png

    5.其他出现的问题

    微信右上角点击两次,有View错位的问题。
    新浪微博点击图片,有卡顿的问题。
    我觉得这些问题可能是因为iOS11还没有正式发布,毕竟还是GM版本。有问题大家留言吧~~

    相关文章

      网友评论

      • 648bcf536395:IOS11下 uitabbar改变frame失效了 有办法解决吗
      • sonialiu:我没有增加Privacy - Photo Library Additions Usage Description这个字段,写入相册和读取相册都不会crash。我看说明文档:意思好像是原来的那个字段是授权读和写权限的,如果只是需要写入相册,建议用新增的这个字段。Although this keys governs read and write access to the user’s photo library, it’s best to use NSPhotoLibraryAddUsageDescription if your app needs only to add assets to the library and does not need to read any assets.
        徐不同:@404你懂得 你没有是正常的,建议用xcode9跑一下模拟器,点击一下下载图片,然后测试是否闪退,如果闪退需要添加Privacy - Photo Library Additions Usage Description。此外,旧的字段不要删除,你可以测试iOS11以下的模拟器跑一下,删除旧的会引起闪退
      • 洁简:xcode还没正式版更新吧
        徐不同:@洁简 GM版本约等于正式版本了。覆盖安装的哟

      本文标题:iOS开发 适配iOS11

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