Android-動畫系列 01

Android-動畫系列 01

動畫開源項目
  1. 圓形進度球:水波紋進度條自定義View貝塞爾曲線
  • 1.1 https://juejin.im/entry/5c270cc7f265da615b718a5e
  • 1.2 http://www.jcodecraeer.com/a/opensource/2015/0902/3402.html
  • 1.3 https://github.com/tangqi92/WaveLoadingView (star 1500)
  • 1.4 https://github.com/gelitenight/WaveView (star 1400)
  • 1.5 https://github.com/jingchenUSTC/WaveView (貝塞爾實現進度條邏輯)
  • 1.6 https://github.com/Geekince/WaterWaveView
  • 1.7 SmileyLoadingView
  1. Ripple Effect(觸摸反饋動畫,水波紋點擊效果):Android 5.0
  • 2.1 https://www.tuicool.com/articles/NFr6jie
  • 2.2 https://blog.csdn.net/gu18168/article/details/56290221
  1. CircularReveal圓形擴散動畫 水波紋RecycleView ItemMD
  • 3.1 http://blog.csdn.net/u010399316/article/details/50937050 RecyleView Item 展示動畫
  1. 碎粒子動畫
  • 4.1 https://www.jianshu.com/p/1af53020719f
  1. 頁面切換動畫 共享元素轉場動畫
  • 5.1 http://www.jianshu.com/p/4c83078d23ef
  • 5.2 https://blog.csdn.net/u012702547/article/details/51289789
  • 5.3 https://download.csdn.net/download/w630886916/10036488
  • 5.4 https://blog.csdn.net/jiangxuqaz/article/details/47264473 Activity滑動切換
  1. 第三方庫
  1. 加載效果 加載
  • 7.1 https://github.com/Kyson/WhorlView
  1. 彈出動畫
  • 8.1 https://github.com/futuresimple/android-floating-action-button
  • 8.2 https://github.com/onivas/MenuAnimation
  • 8.3 https://github.com/Karumi/ExpandableSelector
  • 8.4 https://github.com/wangjiegulu/RapidFloatingActionButton
  • 8.5 https://github.com/yavski/fab-speed-dial
  1. 其他
  • 9.1 https://blog.csdn.net/shedoor/article/details/81251849

動畫種類
  1. 幀動畫 (Frame Animation)
  • 1.1 一般開機動畫會用到
  • 1.2 複雜動畫
  • 1.3 使用幀動畫時需要注意,不要使用過多特別大的圖,容易導致內存不足
  1. 補間動畫 即View動畫:主要有平移、旋轉、縮放、漸變4種方式或組合一起的動畫。
    例如:PopWindow動畫、Activity進入,退出、ViewGroup通過layoutAnimation設置子控件動畫、RecycleView中Item展示,消失動畫、約束佈局實現的關鍵幀動畫(ConstraintSet 動畫)等
  • 2.1 一般直接作用View上,實現基本動畫:平移、旋轉、縮放、透明度、或前幾者的交集
  • 2.2 xml文件實現的補間動畫,複用率極高。在Activity切換,窗口彈出時等情景中有着很好的效果
  1. 屬性動畫
  • 3.1 https://www.cnblogs.com/dasusu/p/8595422.html
  • 3.2 屬性動畫跟View動畫較相似,先說下各自特點以及區別
  • View動畫能力較爲單一,目前只支持幀動畫、縮放、位移、旋轉、透明度以及這些動畫組合動畫
  • View動畫改變的是View的繪製效果,View位置和相關屬性並不會改變,這也就造成了點擊事件觸發區域位置爲動畫前的位置的原因
  • 屬性動畫作用對象不侷限在View上,而是任何提供了Getter和Setter 方法的對象屬性上
  • 屬性動畫沒有直接改變View狀態的能力,而是通過動態改變View相關屬性來改變 View顯示效果
  • 屬性動畫使用更方便,可以用更簡潔的代碼實現相關動畫
  • 屬性動畫是Android3.0以上系統提供,在3.0以下需導入nineoldandroids 三方庫解決
  1. Vector動畫 矢量圖動畫
  • 4.1 http://www.jcodecraeer.com/a/opensource/2017/0627/8116.html
  • 4.2 https://github.com/tarek360/RichPath
  • 4.3 https://www.jianshu.com/p/4707a4738a51

參考

  1. https://www.jianshu.com/p/27ac2a314fae (屬性動畫講解,guolin_blog (郭霖)獨家發佈)
  2. http://a.codekk.com/detail/Android/lightSky/%E5%85%AC%E5%85%B1%E6%8A%80%E6%9C%AF%E7%82%B9%E4%B9%8B%20Android%20%E5%8A%A8%E7%94%BB%E5%9F%BA%E7%A1%80
  3. http://a.codekk.com/detail/Android/lightSky/%E5%85%AC%E5%85%B1%E6%8A%80%E6%9C%AF%E7%82%B9%E4%B9%8B%20View%20%E7%BB%98%E5%88%B6%E6%B5%81%E7%A8%8B
參考
  1. Android 動畫:手把手帶你深入瞭解神祕的插值器(Interpolator)
  2. 插值器和估值器
發佈了130 篇原創文章 · 獲贊 25 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章