美文网首页
UICollectionView item无法覆盖状态栏

UICollectionView item无法覆盖状态栏

作者: keking | 来源:发表于2017-11-02 15:25 被阅读0次

    今天调试一个问题时,发现uicollectionview的item无法置顶,每次显示的时候都和上边缘有一个间距。查看了collectionFlowLayout的配置,item的间距和行距都设置了0.而且collectionview的上边缘设置的和superview的top间距是0.但是不管怎么调,还是有问题,断点调试,发现item的item.frame.origin.y = -10.觉得很奇怪,通过constraint来设置这些值,还是不起效果。怀疑是不是collectionview跟statusbar有冲突,初始化时加入代码

    collectionview.contentInset=UIEdgeInsetsMake(-20, 0, 0, 0);//上移20,状态栏的高度
    

    问题就解决了。item能贴着手机上边缘显示。
    具体原因是iOS11版本的兼容性导致的。
    iOS 11需要做兼容性处理,具体的一些细节参考
    http://www.jianshu.com/p/370d82ba3939

    另外需要注意的是:如果你用的是storyboard,vc的语言选择的是iphone8或者iphoneX,即使调试使用的的手机是10.x的系统版本,也必须对11.x做适配
    storyboard采用iphone8添加视图,苹果应该是默认你使用在11.x的系统版本上

    相关文章

      网友评论

          本文标题:UICollectionView item无法覆盖状态栏

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