我正在尝试在Android中应用淡入\转换。
你能告诉我为什么我只看了一会儿的褪色然后又回到原来的alpha?
我已添加setFillAfter(true);
以保持图片消失。
我试过了:
animation = android.view.animation.AnimationUtils
.loadAnimation(AppService.getAppContext(),
com.waze.R.anim.fade_out);
animation.setInterpolator(new AccelerateInterpolator());
animation.setFillAfter(true);
boxImage_left.startAnimation(animation);
用这个:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true">
<alpha android:fromAlpha="0.0"
android:toAlpha="1.0"
android:repeatCount="0"
android:duration="500"/>
</set>
还有:
AlphaAnimation alpha = new AlphaAnimation(0,1);
alpha.setDuration(600);
animation.setInterpolator(new AccelerateInterpolator());
animation.setFillAfter(true);
vImage_left.startAnimation(alpha);
答案 0 :(得分:0)
让您的活动实现AnimationListener,并在动画结束后设置可见性。
public class YourActivity extends Activity implements AnimationListener
{
@override
onCreate(Bundle x)
{
...
// set animation listener
animFadein.setAnimationListener(this);
animFadeOut.setAnimationListener(this);
}
@Override
public void onAnimationEnd(Animation animation)
{
if (animation == animFadein)
{
view.setVisibility(View.VISIBLE);
}
if (animation == animFadeOut)
{
view.setVisibility(View.INVISIBLE);
}
}
}
对于动画速度修改动画持续时间和插补器
答案 1 :(得分:0)
您可以使用 LinearInterpolator
代替 AccelerateInterpolator我知道为时已晚,但会帮助别人。