走穿android动画,AndroidUI 视图动画-混合动画效果 (AnimationSet)/动画效果监听

在前面介绍了几种动画效果:透明动画效果(AlphsAnimation)、移动动画效果(TranslateAnimation)、旋转动画效果(RotateAnimation)、缩放动画效果(ScaleAnimation);那么可不可以将这几种动画效果混在一块用呢?

可以的,这个时候我们就用到了AnimationSet,它可以将一种或多种动画效果放在一起运行,下面是一个移动+透明效果的例子:

android:id="@+id/btnAnimation"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/btnAnimation" />

动画代码:

findViewById(R.id.btnAnimation).setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

//创建动画容器,并且将是否使用动画补间(shareInterpolator)设置为true;

//AnimationSet set=new AnimationSet(true);

//透明效果动画

//AlphaAnimation alpha=new AlphaAnimation(0,1);

//alpha.setDuration(2000);

//移动效果动画

//TranslateAnimation trans=new TranslateAnimation(50, 0, 50, 0);

//trans.setDuration(2000);

//set.addAnimation(alpha);

//set.addAnimation(trans);

//v.startAnimation(set);

//使用XML配置混合动画

v.startAnimation(AnimationUtils.loadAnimation(v.getContext(), R.anim.set1));

}

});

XML:

c81b359665136bc09f3a8e2d7b3a2439.png

android:shareInterpolator="true">

android:toAlpha="1"

android:duration="2000" />

android:toXDelta="0"

android:fromYDelta="50"

android:toYDelta="0"

android:duration="2000" />

效果:

5647f4e691db37573f98158e7cf50046.png

464f1c59d8bfc2dec01f2eca316683e7.png

动画效果监听,如果想在动画的执行过程,做一些其它事情可以实现动画的setAnimationListener事件监听器,在事件监听器里面有三个方法:

//透明效果动画

AlphaAnimation alpha=new AlphaAnimation(0,1);

alpha.setAnimationListener(new AnimationListener() {

@Override

public void onAnimationStart(Animation animation) {

}

@Override

public void onAnimationRepeat(Animation animation) {

}

@Override

public void onAnimationEnd(Animation animation) {

}

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值