Skip to content

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_结合手势驱动可交互的转场动画

本站使用 VitePress 制作