美文网首页
CollectionView的显示偏移

CollectionView的显示偏移

作者: miku酱啦 | 来源:发表于2017-04-22 13:46 被阅读0次

    当在以下情况时 collectionView的显示会出现偏移

    CollectionView所属的控制器是 窗口的根控制器 或者该控制器是受 NavigationController 或 TabBarController所管理 则会发生偏移

    偏移效果如图

    CollectionView的Bounds值变为-64

    代码

    UIView* subView=[[UIView alloc]initWithFrame:self.view.bounds];

    [self.view addSubview:subView];

    Layout* layout=[Layout new];

    UICollectionView* cl=[[UICollectionView alloc]initWithFrame:CGRectMake(0, 0, 375, 300) collectionViewLayout:layout];

    cl.dataSource=self;

    cl.delegate=self;

    [cl registerNib:[UINib nibWithNibName:@"Cell" bundle:nil] forCellWithReuseIdentifier:@"cell"];

    [subView addSubview:cl];

    产生的原因

    当我们在我们在Storyboard或者Nib上对NavigationBar进行上色时,运行出来的效果与设计图出现色差,后来才发现是iOS7及以上对导航栏(工具栏亦同)的高斯模糊处理,也就是可以把导航栏后面的视图或者对导航栏的背景(或背景图)显示出来,如果单纯的设置背景颜色也是有高斯模糊处理的效果,会产生色差

    所以会把collectionView 向下偏移 20 或者64

    解决方法

    automaticallyAdjustsScrollViewInsets 设置为 NO

    相关文章

      网友评论

          本文标题:CollectionView的显示偏移

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