想完成点击刷新按钮,listiew自动下拉刷新,并且刷新按钮一直旋转,直到刷新成功。
首先让动画每次在完成的时候都重复开始,这样就完成了循环功能。
rotateAnimation.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { } @Override public void onAnimationEnd(Animation animation) { buttonFloat.getIcon().startAnimation(rotateAnimation); } @Override public void onAnimationRepeat(Animation animation) { } });然后发现调用view的clerAnnimation(),或者Animation的cancle(),都不能停止动画。
最后发现问题是出在监听器这里,在想要停止循环的地方,把监听器设置为null就行了
buttonFloat.getIcon().getAnimation().setAnimationListener(null); buttonFloat.getIcon().clearAnimation();