iOS动画与手势实战:纯代码UIKit精解
第1章_动画核心概念
1.1_理解视图(View)与图层(Layer)的关系
1.2_可动画化的视图属性(Frame、Bounds、Center或Transform)
1.3_可动画化的图层属性(Position、Opacity或Shadow)
1.4_Core_Animation架构概览
第2章_纯代码开发环境搭建
2.1_创建无Storyboard的Xcode项目
2.2_在SceneDelegate中设置根视图控制器
2.3_以编程方式添加和布局视图
2.4_理解视图生命周期(ViewLifeCycle)
第3章_基础UIView动画
3.1_使用UIView.animate(withDuration:animations:)
3.2_实现位置与大小变化动画
3.3_实现透明度与颜色渐变动画
3.4_实现视图旋转与缩放动画
第4章_带完成回调的动画
4.1_使用completion闭包处理动画结束事件
4.2_构建连续的链式动画效果
4.3_在动画完成后更新UI状态
4.4_处理动画被中断的情况
第5章_高级动画选项配置
5.1_配置动画延迟(delay)
5.2_使用UIView.AnimationOptions设置动画曲线
5.3_实现重复(.repeat)与自动反向(.autoreverse)
5.4_配置动画插值(Interpolation)效果
第6章_UIView关键帧动画
6.1_使用animateKeyframes创建多步动画
6.2_addKeyframe方法详解
6.3_定义每帧的开始时间与持续时长
6.4_实现复杂的非线性路径动画
第7章_UIView视图过渡
7.1_使用UIView.transition(with:duration:options:animations:)
7.2_实现翻转、淡入淡出等过渡效果
7.3_在容器视图内切换子视图
7.4_自定义视图控制器转场过渡
第8章_CALayer与CAAnimation
8.1_直接操作CALayer属性
8.2_CAAnimation动画类层次结构
8.3_理解模型层与呈现层(Presentation_Layer)
8.4_设置fillMode与removedOnCompletion
第9章_基础动画(CABasicAnimation)
9.1_创建CABasicAnimation实例
9.2_设置fromValue、toValue或byValue
9.3_将动画添加到图层(add(_:forKey:))
9.4_实现沿着路径移动的动画
第10章_关键帧动画(CAKeyframeAnimation)
10.1_使用values属性定义关键帧
10.2_使用path属性定义运动轨迹
10.3_设置keyTimes控制每帧节奏
10.4_实现抖动、弹跳等复杂效果
第11章_动画组(CAAnimationGroup)
11.1_创建CAAnimationGroup实例
11.2_将多个动画组合成一个单元
11.3_同步执行缩放、旋转和移动
11.4_统一管理动画组的持续时间
第12章_过渡动画(CATransition)
12.1_创建CATransition实例
12.2_设置过渡类型(type)与子类型(subtype)
12.3_实现推入、揭开、立方体等效果
12.4_对图层内容变化应用过渡
第13章_手势识别基础
13.1_UIGestureRecognizer工作原理
13.2_添加手势到视图(addGestureRecognizer)
13.3_实现手势响应方法(Action)
13.4_获取手势状态(state)与位置信息
第14章_常用手势详解
14.1_点击手势(UITapGestureRecognizer)
14.2_长按手势(UILongPressGestureRecognizer)
14.3_轻扫手势(UISwipeGestureRecognizer)
14.4_平移手势(UIPanGestureRecognizer)
14.5_缩放手势(UIPinchGestureRecognizer)
14.6_旋转手势(UIRotationGestureRecognizer)
第15章_手势代理与冲突处理
15.1_遵循UIGestureRecognizerDelegate协议
15.2_解决多个手势间的冲突
15.3_实现手势的共存与互斥
15.4_自定义手势识别逻辑
第16章_拖拽与释放动画
16.1_使用UIPanGestureRecognizer实现视图拖拽
16.2_在手势结束时计算目标位置
16.3_结合UIView动画实现平滑的释放归位效果
16.4_添加边界检测与吸附效果
第17章_卡片式UI交互
17.1_实现可滑动的卡片堆叠视图
17.2_结合平移与旋转手势
17.3_根据滑动距离和速度决定卡片飞出动画
17.4_实现卡片的复位与切换
第18章_物理引擎动画(UIDynamicAnimator)
18.1_UIDynamicAnimator与UIDynamicBehavior简介
18.2_实现重力(UIGravityBehavior)效果
18.3_实现碰撞(UICollisionBehavior)效果
18.4_实现吸附(UISnapBehavior)与弹性(UIAttachmentBehavior)
第19章_自定义转场动画
19.1_实现UIViewControllerAnimatedTransitioning协议
19.2_创建自定义的Present或Dismiss动画
19.3_实现UINavigationController的Push或Pop动画
19.4_结合手势驱动可交互的转场动画