public class AnimationDemo {
private static AnimationDemo instance;
public static AnimationDemo getInstance(){
if (instance==null){
synchronized (AnimationDemo.class){
if (instance==null)
instance=new AnimationDemo();
}
}
return instance;
}
//共有四种动画:透明度 旋转 移动 缩放
public void doAlpha(ImageView iv){
AlphaAnimation alphaAnimation = new AlphaAnimation(0,1);
alphaAnimation.setDuration(5000);
iv.startAnimation(alphaAnimation);
}
public void doRotate(ImageView iv){
// RotateAnimation alphaAnimation = new RotateAnimation(0,360,iv.getWidth()/2,iv.getHeight()/2);
RotateAnimation alphaAnimation = new RotateAnimation(0,360);
alphaAnimation.setDuration(5000);
iv.startAnimation(alphaAnimation);
}
public void doTranslate(ImageView iv){
TranslateAnimation alphaAnimation = new TranslateAnimation(0,200,0,300);
alphaAnimation.setDuration(5000);
iv.startAnimation(alphaAnimation);
}
public void doScale(ImageView iv){
ScaleAnimation alphaAnimation = new ScaleAnimation(0,1,0,1,Animation.RELATIVE_TO_SELF,Animation.RELATIVE_TO_SELF);
alphaAnimation.setDuration(5000);
iv.startAnimation(alphaAnimation);
}
//补间动画集合
public void doGroup(ImageView iv){
AnimationSet animationSet = new AnimationSet(true);//为真则使用共同的动画时间,为假则使用各自的动画时间
TranslateAnimation alphaAnimation = new TranslateAnimation(0,200,0,300);
alphaAnimation.setDuration(5000);
animationSet.addAnimation(alphaAnimation);
ScaleAnimation scaleAnimation = new ScaleAnimation(0,1,0,1,Animation.RELATIVE_TO_SELF,Animation.RELATIVE_TO_SELF);
scaleAnimation.setDuration(5000);
animationSet.addAnimation(scaleAnimation);
//设置动画的监听器
animationSet.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
Log.v("meee","开始");
}
@Override
public void onAnimationEnd(Animation animation) {
Log.v("meee","结束");
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
iv.startAnimation(animationSet);
}
}
animationDemo
最新推荐文章于 2024-06-06 09:40:27 发布