【问题标题】:UICollectionView - customize item disappearing when section collapsesUICollectionView - 自定义项目在部分折叠时消失
【发布时间】:2014-08-15 09:49:00
【问题描述】:
我通过切换numberOfItemsInSection: 来折叠和展开部分。折叠时,项目会通过 alpha 淡出消失。我想将此效果更改为按比例缩小。
我想我可以使用自定义UICollectionViewFlowLayout 和重载layoutAttributesForItemAtIndexPath: 来实现这一点。但是当部分折叠时,numberOfItemsInSection: 返回 0 - 所以我无法为这些项目设置目标比例。
什么是正确的做法?
【问题讨论】:
标签:
uicollectionview
collapse
uicollectionviewlayout
sections
flowlayout
【解决方案1】:
找到方法:我们需要继承UICollectionViewFlowLayout并覆盖finalLayoutAttributesForDisappearingItemAtIndexPath:
例如:
- (UICollectionViewLayoutAttributes *)finalLayoutAttributesForDisappearingItemAtIndexPath:(NSIndexPath *)itemIndexPath
{
UICollectionViewLayoutAttributes *attributes = [super finalLayoutAttributesForDisappearingItemAtIndexPath:itemIndexPath];
attributes.frame = CGRectInset(attributes.frame, 20, 20);
return attributes;
}