分享一個簡單的畫刷動畫效果:?️BrushEffect

7ommy發表於2018-08-01

概述

前一陣子刷 即刻 的時候,在UI Movement主題下看到了這個動畫效果。 當時覺得挺簡單的而且效果不錯,就自己試了試。 之前都是大多數時候都是用的開源庫,通過這個小專案自己也完整的感受了一把開源體驗?

這麼簡單的效果應該不會有人對所謂“原理”感興趣吧?

感受一下

  • UI Movement上的效果

UI Movement

  • 最終效果?

Preview

用法

  • duration:時長
  • orientation:方向
  • reverse:動畫反向
  • startColor:動畫開始顏色
  • endColor:動畫結束顏色
  • strokeWidth:刷子寬度(1.0f為填充整個容器)
  • strokeCap:刷頭性狀
implementation 'com.github.tommytc:BrushEffect:1.0.0'
複製程式碼
<com.github.tommytc.lib.brusheffect.BrushEffectLayout
        android:id="@+id/layoutTitle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:bel_duration="400"
        app:bel_orientation="horizontal"
        app:bel_reverse="true"
        app:bel_startColor="@color/colorAccent"
        app:bel_endColor="@color/colorAccent"
        app:bel_strokeWidth="1.0"
        app:bel_strokeCap="square">

        <Your view/>

    </com.github.tommytc.lib.brusheffect.BrushEffectLayout>
複製程式碼
//Set interpolators
brushEffectLayout.setInInterpolator();
brushEffectLayout.setOutInterpolator();

//Set a listener
brushEffectLayout.setListener(new BrushEffectLayout.Listener() {
            public void onStart() {
            }

            public void onCover() {
            }

            public void onFinish() {
            }
        });

//Start
brushEffectLayout.brush();
//End
brushEffectLayout.hide();

複製程式碼

Repo

相關文章