[Android]实现TextView的文字从左到右渐隐渐现的动画效果

TextView tvMsg = (TextView) findViewById(R.id.tvMsg);

//绑定动画脚本,需要把动画脚本xml文件放到res/anim目录下(没有anim目录的需要自已手动创建)

Animation animation = AnimationUtils.loadAnimation(this, R.anim.welcome_anime.xml);

//绑定动画

tvMsg.startAnimation(animation);


动画脚本:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:fillAfter="true"
    android:fillBefore="true"
    android:fillEnabled="true"
    android:startOffset="150" >

    <translate
        android:duration="1000"
        android:fromXDelta="-20%"
        android:interpolator="@android:anim/accelerate_interpolator"
        android:toXDelta="0%" />
    <translate
        android:duration="1000"
        android:fromXDelta="0%"
        android:interpolator="@android:anim/decelerate_interpolator"
        android:startOffset="2200"
        android:toXDelta="20%" />
    <alpha
        android:duration="900"
        android:fromAlpha="0.0"
        android:interpolator="@android:anim/accelerate_interpolator"
        android:startOffset="100"
        android:toAlpha="0.85" />
    <alpha
        android:duration="900"
        android:fromAlpha="0.85"
        android:interpolator="@android:anim/decelerate_interpolator"
        android:startOffset="2200"
        android:toAlpha="0.0" />
</set>


参数interpolator

android:interpolator

interpolator 被用来修饰动画效果,定义动画的变化率,可以使存在的动画效果可以 accelerated(加速),decelerated(减速),repeated(重复),bounced(弹跳)等。

android 自带的interpolator

  

AccelerateDecelerateInterpolator 在动画开始与介绍的地方速率改变比较慢,在中间的时候加速

AccelerateInterpolator  在动画开始的地方速率改变比较慢,然后开始加速

AnticipateInterpolator 开始的时候向后然后向前甩

AnticipateOvershootInterpolator 开始的时候向后然后向前甩一定值后返回最后的值

BounceInterpolator   动画结束的时候弹起

CycleInterpolator 动画循环播放特定的次数,速率改变沿着正弦曲线

DecelerateInterpolator 在动画开始的地方快然后慢

LinearInterpolator   以常量速率改变

OvershootInterpolator    向前甩一定值后再回到原来位置


动画脚本xml文件下载:welcome_anime.xml

  1. 本网站所收集的部分资料来源于互联网,本站不对其真实性负责,也不构成任何其他建议。如果您发现有侵犯您权益的内容,请与我们取得联系,我们会及时修改或删除。
  2. 传递知识、传递力量,欢迎各位网友对本站的文章进行转载和分享。
  3. 本站QQ群交流群:904314688  群号:904314688

版权所有:秋风雅居 (www.28ab.cn) ©2013-2019 All Rights Reserved.

粤ICP备19021598号-3