1

私は自分自身の進捗ダイアログを作成しようとしています。レイアウトを膨らませるダイアログを使用しています。このレイアウトでは、がありますImageView。このimageviewは、の元のスピナーと同じように回転するはずProgressDialogです。私はそれにこのアニメーションを適用しました:

RotateAnimation r = new RotateAnimation(ROTATE_FROM, ROTATE_TO, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
    r.setDuration(10000);
    r.setRepeatCount(r.INFINITE);
    icon.startAnimation(r);

アニメーションは明らかに10000ミリ秒続きます。アニメーションの開始と終了が遅いのですが、回転速度が常に一定である可能性はありますか?

4

2 に答える 2

2

LinearInterpolatorアニメーションにを設定できます。

r.setInterpolator(new LinearInterpolator());
于 2013-01-15T08:46:05.860 に答える
0

回転速度を上げる方法は、自分に適用されるrepeatCountフィールドに期間と数値を設定することです。そうすることで、速度を制御できます...大きな数字をいくつか入れて、アニメーションにリスナーを追加し、アニメーションが終了したら、ダイアログがまだ表示されている場合は、アニメーションを再開します。

于 2013-01-15T08:26:25.053 に答える