iOS UICollectionViewLayout
2019-10-09 本文已影响0人
samtake
UICollectionView调用这四种方法来确定布局信息
- (nullable NSArray<__kindof UICollectionViewLayoutAttributes *> *)layoutAttributesForElementsInRect:(CGRect)rect;
返回给定矩形中所有视图的数组布局属性实例(返回辅助视图或装饰视图的布局属性,或者根据需要在屏幕上执行布局)
- (nullable UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath;
所有布局子类都应该实现该函数:根据需要返回特定索引路径的布局属性实例。
如果布局支持任何补充或装饰视图类型,它还应该为这些类型实现各自的atIndexPath:方法
- (nullable UICollectionViewLayoutAttributes *)layoutAttributesForSupplementaryViewOfKind:(NSString *)elementKind atIndexPath:(NSIndexPath *)indexPath;
- (nullable UICollectionViewLayoutAttributes *)layoutAttributesForDecorationViewOfKind:(NSString*)elementKind atIndexPath:(NSIndexPath *)indexPath;
相关数学函数
extern double fabs(double);
CGFloat类型的绝对值
动画相关的函数
/* Returns a transform that scales by `(sx, sy, sz)':
* t' = [sx 0 0 0; 0 sy 0 0; 0 0 sz 0; 0 0 0 1]. */
CA_EXTERN CATransform3D CATransform3DMakeScale (CGFloat sx, CGFloat sy,
CGFloat sz)