动画后的TextView重置文本大小

时间:2012-06-02 19:54:30

标签: android

当我点击TextView并且我有像

这样的代码时,我想让文字大小更大

/res/anim/scale_up.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <scale
        android:duration="500"
        android:fromXScale="1.0"
        android:fromYScale="1.0"
        android:toXScale="1.3"
        android:toYScale="1.3" >

    </scale>

</set>

,代码如

txt.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                Animation a = AnimationUtils.loadAnimation(SwipeActivity.this, R.anim.scale_up);
                a.reset();
                v.clearAnimation();
                v.startAnimation(a);
            }
        });

并且它会缩放,但是当它完成缩放(500ms)时,它会返回旧的字体大小。如何防止这种情况,我想保持一倍的尺寸?

1 个答案:

答案 0 :(得分:3)

首先,您可以将textize设置为使用动画的TextView实例。动画它会使文字模糊。

EKS:

textView.setTextSize(20);

动画弹回原始大小的原因是因为你没有使用setFillAfter。

Animation a = AnimationUtils.loadAnimation(SwipeActivity.this, R.anim.scale_up);
a.setFillAfter(true);
v.startAnimation(a);