1

私はアンドロイドプログラミングが初めてです私がやろうとしているのは、ボタンを行全体に1つずつスケーリングすることです。しかし、何が起こっているかというと、それらはすべて同時にスケーリングされています。

   for(int xcnt = 1; xcnt < 9;  ){

   RelativeLayout box = (RelativeLayout) buttonBoxes.get(xcnt);

   Animation animscale =   new ScaleAnimation(1f, 1.5f, 1f, 1.5f,
                Animation.RELATIVE_TO_SELF, (float)0.5, 
                Animation.RELATIVE_TO_SELF, (float)0.5);            

    animscale.setDuration(2000);
    animscale.setStartOffset(1000);  // pause for 1 second
    animscale.setRepeatMode(ValueAnimator.REVERSE);

        box.startAnimation(animscale);

        animscale.setStartOffset(1000);  // pause for 1 second
        xcnt = xcnt +1;

    }
4

1 に答える 1

0

問題は、for loop(インデックス 1 から 9) が数マイクロ秒で実行されることです。すべてはanimationですぐに開始されますmicro seconds of delay。設定setStartOffset1000ms見た目に大きな変化はありません。

オフセット時間を次のように変更してみてくださいxcnt * 1000

 animscale.setStartOffset(1000 * xcnt);
于 2014-05-07T00:13:35.587 に答える