子类化自定义 UICollectionViewLayout 实现一定的删除和插入效果
Posted
技术标签:
【中文标题】子类化自定义 UICollectionViewLayout 实现一定的删除和插入效果【英文标题】:Subclassing custom UICollectionViewLayout to achieve certain deletion and insertion effect 【发布时间】:2016-11-30 07:05:03 【问题描述】:以下是我希望实现的目标。
-
我们有一个同时显示三个项目的水平视图。
当我们单击一个按钮时,三个项目滑出视图并被删除。然后再创建 3 个项目并将其移到视图中以替换之前的 3 个项目。
即使总共只有4个项目,我们也可以无休止地更改项目。
我正在考虑通过子类化 uicollectionviewlayout 并使用以下两个函数来使用 collectionView 来实现这一点。
initialLayoutAttributesForAppearingDecorationElementOfKind:atIndexPath:
finalLayoutAttributesForDisappearingDecorationElementOfKind:atIndexPath:
但我无法做到这一点。任何人都知道我该如何实现这一目标?
提前致谢!
【问题讨论】:
具有自定义布局的集合视图可能很难做到正确。您可能希望从两个水平的UIStackView
s 开始,每个具有 3 个元素,然后只为一个离屏和另一个开动。首次通过会更容易实现。
@par 我明白了.. 非常感谢您的建议.. 我一定会检查它是否是一个好的解决方案(:
【参考方案1】:
相反,您为什么不使用水平 flowLayout 并在按下按钮时更新集合视图的数据源并使用移出动画重新加载/插入Cells?
【讨论】:
以上是关于子类化自定义 UICollectionViewLayout 实现一定的删除和插入效果的主要内容,如果未能解决你的问题,请参考以下文章