我现在正在尝试复制它:
如果你熟悉 Google 的应用,它看起来就像一个带有自定义流布局的 UICollectionView。
我正在扩展一个已通过一些附加代码关闭的问题。
在自定义流布局类中,我可以通过设置负的最小行距值来创建“堆叠”效果,并使用以下内容:
- (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect
{
NSArray *allAttributesInRect = [super layoutAttributesForElementsInRect:rect];
CGPoint centerPoint = CGPointMake(CGRectGetMidX(self.collectionView.bounds), CGRectGetMidY(self.collectionView.bounds));
for (UICollectionViewLayoutAttributes *cellAttributes in allAttributesInRect)
{
if (CGRectContainsPoint(cellAttributes.frame, centerPoint))
{
cellAttributes.transform = CGAffineTransformIdentity;
cellAttributes.zIndex = 1.0;
}
else
{
cellAttributes.transform = CGAffineTransformMakeScale(0.75, 0.75);
}
}
return allAttributesInRect;
}
滑动删除动画工作正常,但我无法创建“堆叠”外观,然后仅将 1 个单元格向上拖动到视图中,同时保持剩余卡片堆叠,就像您在上面看到的那样。