iOS学习笔记【十一】——UICollectionViewLayout

iOS学习笔记——UICollectionViewLayoutSummaryUITableView 和 UICollectionView 在显示其子视图集的过程中仅扮演容器角色,且对子视图集真正的内容毫不知情。UICollectionView在此之上进行了进一步抽象。它将其子视图的位置,大小和外观的控制权委托给一个单独的布局对象。布局继承自UICollectionViewLayout 抽象基类。iOS6 中以UICollectionViewFlowLayout类的形式提出了一个具体的布局实现。/
摘要由CSDN通过智能技术生成

Summary

  • UITableViewUICollectionView 在显示其子视图集的过程中仅扮演容器角色,且对子视图集真正的内容毫不知情。UICollectionView 在此之上进行了进一步抽象,它将其子视图的位置,大小和外观的控制权委托给一个单独的布局对象。
  • 布局继承自UICollectionViewLayout抽象基类。iOS6 中以UICollectionViewFlowLayout类的形式提出了一个具体的布局实现。
// 创建UICollectionView对象
- (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
// collection view持有对应的layout对象
@property (nonatomic, strong) UICollectionViewLayout *collectionViewLayout;
// layout中持有对应的collection view对象
@property (nullable, nonatomic, readonly) UICollectionView *collectionView;

UICollectionViewLayout

Properties

UICollectionViewScrollDirection
UICollectionViewScrollDirectionVertical
UICollectionViewScrollDirectionHorizontal
  • Related Methods : collectionViewContentSize
  • if your computed content size expands past the bounds of the current device’s screen both vertically and horizontally, the scroll view adjusts to allow scrolling in both directions simultaneously. // 根据collectionViewContentSize方法获取的content size来设置默认的direction.
UICollectionElementCategory
UICollectionElementCategoryCell    // 用于展示内容的主体,可以定制其尺寸和内容。
UICollectionElementCategorySupplementaryView //用于追加视图,和UITableView里面的Header和Footer的作用类似
UICollectionElementCategoryDecorationView    //用于装饰视图,是每个section的背景
  • Related Properties : representedElementCategory、representedElementKind(in UICollectionViewLayoutAttributes class)
UICollectionUpdateAction
UICollectionUpdateActionInsert
UICollectionUpdateActionDelete
UICollectionUpdateActionReload
UICollectionUpdateActionMove
UICollectionUpdateActionNone
  • Related Property : UICollectionViewUpdateItem
UICollectionViewUpdateItem
// 一个更新单位
NSIndexPath *indexPathBeforeUpdate; // nil for UICollectionUpdateActionInsert
NSIndexPath *indexPathAfterUpdate;  // nil for UICollectionUpdateActionDelete
UICollectionUpdateAction updateAction;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值