iOS - 常用的动画库调研

常用的动画库调研

由于动画库的种类很多,效果也因需求不同而表现得不同,很难根据某个量化的标准去收录,比如 star 的数量,最近更新的时间点,所以本次调研内容,主要收录包含各种动画库跳转链接的文章,和不同文章收录交叉重叠较多的库的摘录。

动画库索引

文章:
GitHub 上 star 数量较高的动画库收录:https://github.com/ameizi/awesome-ios-animation
Swift 动画库收录:https://juejin.im/post/5c7d1ff3f265da2dcc8010e7
分类比较详细的动画库收录:https://cloud.tencent.com/developer/article/1346906
网站:
CocoaChina:http://code.cocoachina.com/list/33/1
Code4App:http://www.code4app.com/code.php

常用的动画库

  • face 出品的动画引擎,公司内部项目曾用到过的:pop

使用POP可以建立4類動效:: spring, decay, basic and custom.

Spring (彈性)動效可以賦予物體愉悅的彈性效果

1
POPSpringAnimation *anim = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerBounds];

Decay (衰減) 動效可以用來逐漸減慢物體的速度至停止

1
POPDecayAnimation *anim = [POPDecayAnimation animationWithPropertyNamed:kPOPLayerPositionX];

Basic(基本)動效可以在給定時間的運動中插入數值調整運動節奏

1
POPBasicAnimation *anim = [POPBasicAnimation animationWithPropertyNamed:kPOPViewAlpha];

Custom(自定義)動效可以讓設計值建立自定義動效,只需簡單處理CADisplayLink,並聯系時間-運動關係

  • 基于 Facebook Pop 引擎的 iOS 动画库,演示用pop实现的各种效果:popping
  • 加载等待动画:MBProgressHUD
  • 加载等待动画,和MBProgressHUD效果差不多,不过不需要使用协议,同时也不需要声明实例:SVProgressHUD
  • 可通过 AE 插件直接将动画导出为 json 文件在客户端使用:lottie-ios
  • IFTTT 开源的一个简单易用的关键帧基础动画框架, 可通过手势、scroll views, KVO, ReactiveCocoa 等方式来控制动画。可以用来做动态引导页:JazzHands
  • 转场动画:AnimatedTransitionGallery
  • 用 Swift 编写的高性能 Gif 播放引擎:SwiftyGif
------本文结束 感谢阅读------

本文地址:http://kaaaaai.cn/articles/iOS-development-animation-library.html
本文基于 知识共享署名-相同方式共享 4.0 国际许可协议发布
转载请注明出处,谢谢!

众筹项目:拯救世界!
0%