一款非常简单酷炫的LoadingView动画效果

  

今天看到一个银行的应用上面的loadingview挺好的,就尝试着自己实现,觉得很简单,但自己实现起来还是发现了一些问题。

  

LoadingView和下图类似:
  

  

一款非常简单酷炫的LoadingView动画效果

  

实现的代码也不是很复杂,就是小球的运动轨迹需要计算,我自己手画了个计算的图,很简单的就是三角函数的使用。
  

  

一款非常简单酷炫的LoadingView动画效果

  

然后代码就是代码实现了,主要的内容都有注释,代码如下:

        公开课LoadingView扩展视图{      私人标签的静态字符串=" LoadingView”;      私人最终静态int LEFT_BALL_DOWN=1;   私人最终静态int LEFT_BALL_UP=2;   私人最终静态int RIGHT_BALL_DOWN=3;   私人最终静态int RIGHT_BALL_UP=4;      私人油漆paint1、paint2 paint3、paint4 paint5;   私人int mCurrentAnimatorValue;   私人int circleRadius=10;//小球的半径   私人int距离=60;//小球开始下落到最低点的距离   私人int mCurrentState=LEFT_BALL_DOWN;         公共LoadingView(上下文语境){   超级(上下文);   init(上下文);   }      公共LoadingView(上下文语境,@Nullable AttributeSet attrs) {   超级(上下文,attrs);   init(上下文);   }      公共LoadingView(上下文语境,@Nullable AttributeSet attrs, int defStyleAttr) {   超级(上下文、attrs defStyleAttr);      init(上下文);   }      私人空间init(上下文语境){      paint1=getPaint (Color.RED);   paint2=getPaint (Color.YELLOW);   paint3=getPaint (Color.GREEN);   paint4=getPaint (Color.BLUE);   paint5=getPaint (Color.CYAN);      ValueAnimator动画=ValueAnimator。ofInt (0, 90);      动画师。addUpdateListener(新ValueAnimator.AnimatorUpdateListener () {   @Override   公共空间>   & lt; com.define_view.LoadingView   android: layout_marginTop=" 20 px”   android:背景=" # 999999 "   android: layout_width=" 200 px "   android: layout_height=" 200 px”/祝辞      

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

一款非常简单酷炫的LoadingView动画效果