<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • Lottie 動效設計

          2019-12-26    純純

          動效設計,是 UI 設計當中不可或缺的一環。大家對動效的認知也從最初認為動效只是為了美觀酷炫,到逐漸理解了動效對于提升用戶體驗和產品需求的重要作用。而導致這種認知的轉變,相當一部分原因是因為硬件性能的發展和動效輸出方式的優化。

          因為動效實現的過程就是設計師和開發之間互相博弈的過程。設計師可能通過 AE 或者其他工具做出炫酷的效果,和開發對接就懵了。要么無法實現,要么極其復雜。畢竟開發工程師要通過代碼把動效實現出來,設計師得用開發所能理解的語言來描述。就如同你能完美地解出一道數學題一樣,讓你把解題思路教給別人,你可能就沒那么順暢了。一方面取決于你的表述能力,而更重要的是對方的理解能力。過去所廣泛采用的通過動效標注輸出給開發的方式,都存在還原度的問題。很多時候還原度達到 80% 可能都算比較好的了。

          而今天要說到的 Lottie 不僅可以 100% 還原動效,而且無需動效標注。直接通過 AE 輸出動效文件給開發。開發人員直接調用,然后完美還原。

          Lottie是什么?

          Lottie 是 Airbnb 開源的一個動畫渲染庫,同時支持 Android、iOS、React Native 平臺。Lottie 支持渲染播放 AE 動畫。通過 AE 插件 bodymovie 導出 json 文件作為動畫數據。


          Lottie有什么用?

          Lottie 可以應用在 UI 設計的很多場景中。以下舉出幾個常用例子。

          1. 動態啟動頁


          2. 動態圖標/按鈕

          3. 空頁面




          以上僅列舉了部分常用案例,其實 Lottie 的應用場景遠不止這些。在 APP 的多個模塊中都可以運用,那么我們要如何將 Lottie 運用在自己的工作項目中呢?那就要了解 Lottie 的原理了。


          Lottie的原理是什么?

          前面已經提過 Lottie 是 Airbnb 開源的一個動畫渲染庫。我們可以理解為它是一個多功能的視頻播放器,開發人員需要將這個播放器部署到相應的環境中。然后設計人員提供視頻(動效文件)給開發人員,讓開發人員按照要求播放視頻文件,即可完成動效的應用。


          假設該按鈕動效一共10幀,整個按鈕切換分為兩部分,第一部分:從菜單切換到關閉(1-10幀);第二部分:從關閉切換到菜單(10-1)。我們可以讓開發通過以下控制方式,完成我們想要的效果。

          按鈕動效默認顯示第1幀(菜單狀態),點擊按鈕以后開始播放動效,動效播放到第10幀的時候停止,并停在第10幀(關閉狀態)。當按鈕為關閉狀態(第10幀)時,點擊按鈕以后動效從第10幀倒放到第1幀(關閉狀態),并停在第1幀(菜單狀態)。

          通過以上方式就完成了對一個動效按鈕的控制。而日常工作中我們可以靈活地運用多種控制方式。

          首先動效的觸發,可以是一次交互事件,比如點擊、滑動;也可以是監聽到了廣播,比如網絡異常等。而觸發以后的動效控制也多種多樣,可以從開始播放到結束,也可以進行倒放;可以循環播放某一段動效;也可以從某一幀播放到另一幀,或者某一個時間點播放到另一個時間點;更多的控制方式需要大家在工作中慢慢挖掘。

          Lottie支持的AE屬性

          Lottie雖然能夠滿足多種場景需要,但是并非支持所有的 AE 效果。設計制作時,需要考慮該效果是否支持。否則,會導致出錯或者所用效果無法生效。



          上圖為 Lottie 支持的主要 AE 屬性,此處有刪減掉部分不常用的屬性。可以打開以下鏈接查看完整版http://airbnb.io/lottie/#/supported-features

          需要注意的是文檔中雖然說支持漸變,但是會出錯,所以大家在使用矢量圖形時,請勿使用漸變效果。關于漸變效果的修復后續文章會提到,官網以后也會修復相關問題,但是沒有確切時間。

          通過上圖我們可以了解到,Lottie 支持的 AE 屬性基本包含以下幾類:

          • 基礎的形狀比如圓形、矩形、星形等,也可以支持鋼筆工具繪制的矢量形狀和從 AI 中導入的矢量圖形。
          • 支持位移、大小縮放、透明度、旋轉、修剪路徑、蒙版、遮罩這些基礎動畫屬性。
          • 支持圖層間建立父子級關系(只支持圖層與圖層之間建立,當圖層的屬性之間建立父子關系會失效,比如 A 圖層可以和 B 圖層建立父子關系,但是 A 圖層的位移屬性和 B 圖層的位移屬性單獨建立父子關系則不生效)。
          • 支持速度貝塞爾插值,可以搭配 Flow 插件生成各種緩動效果。
          • 支持導入圖片。
          • 支持時間拉伸和時間重映射來通知時間和速度。

          (原文章來源于:https://www.uisdc.com/lottie-dynamic-design-guide





          日歷

          鏈接

          個人資料

          藍藍設計的小編 http://m.sdgs6788.com

          存檔

          亚洲第一极品精品无码久久| 国内精品久久久久影院日本| 午夜精品久久久久久| 亚洲欧洲久久av| 久久99精品久久久久婷婷| 久久久久国产日韩精品网站| 亚洲国产美女精品久久久久∴| 91麻豆精品国产91久久久久久| 国产精品久久婷婷六月丁香| 精品久久久久久中文字幕| 久久久久久久精品妇女99| 国产高潮久久免费观看| 欧洲精品久久久av无码电影| 天天做夜夜做久久做狠狠| 99久久这里只有精品| 伊人久久精品无码二区麻豆| 久久99精品久久久久久野外| 国产精品久久永久免费| 亚洲av伊人久久综合密臀性色| 久久强奷乱码老熟女网站| 欧美精品一区二区精品久久| 亚洲精品无码久久久久| 99久久综合国产精品免费| 狠狠色伊人久久精品综合网| 99久久无色码中文字幕| 久久国产精品99国产精| 日产精品99久久久久久| 国内精品久久久久影院薰衣草 | 中文字幕无码av激情不卡久久| 国产激情久久久久影院| 久久精品国产亚洲麻豆| 久久91精品久久91综合| 精品久久久久久亚洲精品| 久久发布国产伦子伦精品| 亚洲va久久久噜噜噜久久狠狠| 亚洲综合伊人久久大杳蕉| 精品国产乱码久久久久久郑州公司 | 日本久久中文字幕| 亚洲综合久久夜AV | 午夜福利91久久福利| 天堂久久天堂AV色综合|