8

私はアンドロイドが初めてです。水平シークバーをアニメーション化しようとしていますが、これまでのところできませんでした。シークバーが1分間の進行状況を示すアニメーションが欲しいだけです。標準のシークバーをどのようにアニメーション化するかについて、誰かが提案/アイデア/コードスニペットを提供できますか?

objectanimator や valueAnimation など、どのようなアニメーションを使用すればよいですか? 親指をアニメーション化して次の位置に移動するには、実行メソッドを定義する必要がありますか (わかりません!)?

前もって感謝します。

4

1 に答える 1

15

これを行う 1 つの方法は、ValueAnimator を使用することです。

final SeekBar seekBar = findViewById(R.id.seekBar);
ValueAnimator anim = ValueAnimator.ofInt(0,seekBar.getMax());
anim.setDuration(1000);
anim.addUpdateListener(new AnimatorUpdateListener() {

        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            int animProgress = (Integer) animation.getAnimatedValue();
            seekBar.setProgress(animProgress);
        }
    });

別の方法は次のとおりです(これをテストしていません):

final SeekBar seekBar =  findViewById(R.id.seekBar); 
ObjectAnimator anim = ObjectAnimator.ofFloat(seekBar, "progress", 0,seekBar.getMax());
anim.setDuration(10000);
anim.start();
于 2012-06-02T21:39:03.780 に答える