IOS-卡片抽屉效果
git地址:模仿豆瓣的卡片抽屉
模仿豆瓣APP的抽屉弹出效果,采用Swift5
####效果图如下
二. 实现步骤
1.主要通过UIPanGestureRecognizer和UIViewPropertyAnimator一起协作完成此效果。
2 通过UIPanGestureRecognizer的State进行相关的处理。
3.核心在于动画的暂停,根据释放手势时候,进行处理动画未完成的继续进行处理。
4.核心代码如下:
/// 手势触发处理
@objc private func panned(recognizer: UIPanGestureRecognizer) {
switch recognizer.state {
case .began: /// 开启动画,并暂停
startAnimation()
animator.pauseAnimation()
animationProgress = animator.fractionComplete
case .changed:
var fraction = -recognizer.translation(in: drawerView<