在 UICollectionViewLayoutAttributes 中设置锚点
Posted
技术标签:
【中文标题】在 UICollectionViewLayoutAttributes 中设置锚点【英文标题】:Set anchor point in UICollectionViewLayoutAttributes 【发布时间】:2015-03-21 10:11:24 【问题描述】:我想在UICollectionViewLayout
中执行变换动画。好吧,这很容易实现,但我找不到设置anchorPoint
的UICollectionViewLayoutAttributes
的方法。我想在插入集合视图项时执行开门和关门动画
-(UICollectionViewLayoutAttributes *)initialLayoutAttributesForAppearingItemAtIndexPath:(NSIndexPath *)itemIndexPath
UICollectionViewLayoutAttributes *attributes = [super initialLayoutAttributesForAppearingItemAtIndexPath:itemIndexPath];
attributes.alpha = 1.0;
CGFloat progress = 0.0;
CATransform3D transform = CATransform3DIdentity;
transform.m34 = -1.0/500.0;
CGFloat angle = (1 - progress) * M_PI_2;
transform = CATransform3DRotate(transform, angle, 0, 1, 0 );
UICollectionViewCell *cell = [self.collectionView cellForItemAtIndexPath:itemIndexPath];
cell.hidden = YES;
attributes.transform3D = transform;
return attributes;
【问题讨论】:
【参考方案1】:UICollectionViewLayoutAttributes
中似乎没有anchorPoint
属性,因此您必须对其进行子类化,为anchorPoint
添加一个属性并使用UICollectionViewCell
上的applyLayoutAttributes
来设置@ 987654326@ 单元格上的值。
【讨论】:
以上是关于在 UICollectionViewLayoutAttributes 中设置锚点的主要内容,如果未能解决你的问题,请参考以下文章
在 React 应用程序中在哪里转换数据 - 在 Express 中还是在前端使用 React?