适配iOS11记录

记录一下适配iOS11过程中遇到的问题以及解决方法。

1、tableView向下偏移20point

app首页上,隐藏掉了系统的navigationBar,使用了自定义的navigationBar,并且tableView的顶部是占用了statusBar的位置。

tableView.png

如果automaticallyAdjustsScrollViewInsets设置为YES,不会出现问题。如果是NO,则添加以下代码可以解决。可以参考iOS 11 安全区域适配总结

if (@available(iOS 11.0, *)) { // >= iOS11
        self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
} else {
        self.automaticallyAdjustsScrollViewInsets = NO;
}

2、titleView错位

项目中使用了自定义titleView,在titleView的实现文件中添加以下代码。

- (CGSize)intrinsicContentSize
{
    return UILayoutFittingExpandedSize;
}

如果是直接把titleView添加在stroyBoard上的话,需要设置titleView子控件的宽高,然后用子控件的大小把titleView撑开。

3、第三方库警告

ReactiveCocoa Unknown warning group ‘-Wreceiver-is-weak’,ignored警告
参考App适配iOS 11中修改Podfile文件,在此感谢作者zhao0!!!

pod 'ReactiveCocoa', :git => 'https://github.com/zhao0/ReactiveCocoa.git', :tag => '2.5.2'

你可能感兴趣的:(适配iOS11记录)