自定義布局

自定義布局 - 繼承UICollectionViewFlowLayout

重寫prepareLayout方法
  • 作用:在這個方法中做一些初始化操作
  • 注意:一定要調(diào)用[super prepareLayout]
重寫layoutAttributesForElementsInRect:方法
  • 作用:
    • 這個方法的返回值是個數(shù)組
    • 這個數(shù)組中存放的都是UICollectionViewLayoutAttributes對象
    • UICollectionViewLayoutAttributes對象決定了cell的排布方式(frame等)
重寫shouldInvalidateLayoutForBoundsChange:方法
  • 作用:如果返回YES,那么collectionView顯示的范圍發(fā)生改變時,就會重新刷新布局
  • 一旦重新刷新布局,就會按順序調(diào)用下面的方法:
    • prepareLayout
    • layoutAttributesForElementsInRect:
重寫targetContentOffsetForProposedContentOffset:withScrollingVelocity:方法
  • 作用:返回值決定了collectionView停止?jié)L動時最終的偏移量(contentOffset)
  • 參數(shù):
    • proposedContentOffset:原本情況下,collectionView停止?jié)L動時最終的偏移量
    • velocity:滾動速率,通過這個參數(shù)可以了解滾動的方向

自定義布局 - 繼承UICollectionViewLayout

重寫prepareLayout方法
重寫layoutAttributesForElementsInRect:方法
重寫collectionViewContentSize方法
  • 作用:返回collectionView的內(nèi)容大小
重寫layoutAttributesForItemAtIndexPath:方法
  • 作用:返回indexPath位置對應(yīng)cell的布局屬性

demo下載:
https://github.com/Tuberose621/-CollectionViewLayout-CollectionViewFlowLayout-

說明:出自MJ筆記

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容