Ios 如何在自定义UICollectionView布局引擎中更改默认布局动画曲线?
我有一个集合视图设置,可以使用自定义集合视图布局运行。我可以通过在UICollectionViewLayoutAttribute上更改单元格的变换和alpha来设置单元格出现和消失的动画,但是,我希望将动画曲线更改为使用弹簧+阻尼,以便使单元格在出现时“反弹” 有人知道我怎样才能做到这一点吗Ios 如何在自定义UICollectionView布局引擎中更改默认布局动画曲线?,ios,swift,uicollectionview,uicollectionviewlayout,Ios,Swift,Uicollectionview,Uicollectionviewlayout,我有一个集合视图设置,可以使用自定义集合视图布局运行。我可以通过在UICollectionViewLayoutAttribute上更改单元格的变换和alpha来设置单元格出现和消失的动画,但是,我希望将动画曲线更改为使用弹簧+阻尼,以便使单元格在出现时“反弹” 有人知道我怎样才能做到这一点吗 谢谢,将UICollectionView的deleteItems/insertItems/reloadItems调用包装到UIView中。动画持续时间:延迟:选项:动画:完成:调用 例如: let dura
谢谢,将UICollectionView的
deleteItems/insertItems/reloadItems调用包装到UIView中。动画持续时间:延迟:选项:动画:完成:
调用
例如:
let duration = 0.25 // Hardcoded keyboard animation duration and curve
let curve = UIViewAnimationOptions(rawValue: 7 << 16) // ↑
UIView.animate(withDuration: duration, delay: 0, options: curve, animations: ({ [weak self] in
self?.collectionView?.performBatchUpdates({
self?.collectionView?.deleteItems(at: deletedIPs)
self?.collectionView?.insertItems(at: insertedIPs)
self?.collectionView?.reloadItems(at: updatedIPs)
}, completion: nil)
}), completion: nil)
let duration=0.25//硬编码键盘动画持续时间和曲线
让曲线=UIViewAnimationOptions(rawValue:7您目前使用的代码是什么?您可以通过使用UIKitDynamics
来实现这一点。有一篇关于它的非常好的博客文章。您想下载博客中使用的代码这里是存储库,我使用的是一个自定义UICollectionViewLayout子类,它覆盖了以下方法:initialLayoutAttributesForAppearingItemAtIndexPath