1

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)、古いサイズのフォントに戻ります。それを防ぐには、2倍のサイズのままにしたいですか?

4

1 に答える 1

3

まず、アニメーションを使用する代わりに、テキストサイズを TextView に設定できます。それをアニメーション化すると、テキストがぼやけます。

エクス:

textView.setTextSize(20);

アニメーションが元のサイズに戻る理由は、setFillAfter を使用していないためです。

Animation a = AnimationUtils.loadAnimation(SwipeActivity.this, R.anim.scale_up);
a.setFillAfter(true);
v.startAnimation(a);
于 2012-06-02T21:18:25.420 に答える