在项目开发过程中,我们有时会遇到需要控件闪烁和停止的问题,这个用xml是可以实现的,但是为了在使用时控制方便,这里我写了一个工具类,方便在代码中控制view的闪烁与停止
闪烁实现原理
闪烁是通过android中的动画类Animation实现的 闪烁不就是Alpha从0到1的过程嘛
动画设置插值器,默认线性插值器
要实现闪烁的话,就是一个重复的过程,于是Animation需要设置重复次数,因为是点击开始在结束之前不停止的,所以会一直重复
最后在设置完动画的model后启动动画
这样一个不断闪烁的动画便完成了,接下来是停止闪烁动画,Animation 有一个类似clear的方法,可以清除加在view上的而动画效果,停止闪烁动画的话
完整代码
public class AnimationUtils {
/**
* 控件闪动
* @param view
*/
public static void flicker(View view){
AlphaAnimation alphaAnimation = new AlphaAnimation(0f, 1.0f);
alphaAnimation.setDuration(800);
alphaAnimation.setInterpolator(new LinearInterpolator());
alphaAnimation.setRepeatCount(Animation.INFINITE);
alphaAnimation.setRepeatMode(Animation.REVERSE);
view.startAnimation(alphaAnimation);
}
public static void clearAnimation(View view){
view.clearAnimation();
}
}
网友评论