美文网首页程序员iOS 开发 iOS Developer
layoutAttributesForElementsInRec

layoutAttributesForElementsInRec

作者: kevinLY | 来源:发表于2016-07-08 16:33 被阅读575次

    最近使用UICollectionView自定义布局的时候报了个提示,看着特别烦

    提示:
    2016-07-08 16:26:38.346 YiTong[27847:733016] Logging only once for UICollectionViewFlowLayout cache mismatched frame
    2016-07-08 16:26:38.347 YiTong[27847:733016] UICollectionViewFlowLayout has cached frame mismatch for index path <NSIndexPath: 0xc000000003c00016> {length = 2, path = 0 - 30} - cached value: {{5, 1330}, {202, 24}}; expected value: {{26.5, 1330}, {202, 24}}
    2016-07-08 16:26:38.347 YiTong[27847:733016] This is likely occurring because the flow layout subclass YTCategoryCollectionViewFlowLayout is modifying attributes returned by UICollectionViewFlowLayout without copying them
    

    之前的代码:

    - (NSArray<UICollectionViewLayoutAttributes *> *)layoutAttributesForElementsInRect:(CGRect)rect {
         NSArray *attributes = [super layoutAttributesForElementsInRect:rect];   
    }
    

    看提示最后一句...without copying them
    修改后的代码:

    - (NSArray<UICollectionViewLayoutAttributes *> *)layoutAttributesForElementsInRect:(CGRect)rect {
         NSArray *attributes = [[NSArray alloc] initWithArray:[super layoutAttributesForElementsInRect:rect] copyItems:YES]; 
    }
    

    修改后就不报提示了

    相关文章

      网友评论

        本文标题:layoutAttributesForElementsInRec

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