1

左からコインが転がってくるアニメーションを作っています。

これまでのところ、RotateAnimation で回転させ、TranslateAnimation で移動させることができます。

今、これら2つを同時に実行しようとして立ち往生しています。

{
    Animation animation = new TranslateAnimation(Animation.RELATIVE_TO_PARENT,-1f,Animation.RELATIVE_TO_PARENT,0,Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0);
    animation.setDuration(5000);
    setCoinAppear.addAnimation(animation);
}
{
    Animation animation = new RotateAnimation(0, 720, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
    animation.setDuration(5000);
    setCoinAppear.addAnimation(animation);
}

同時に開始すると、コインは中心の周りに収束する円運動を示します。

それを成し遂げる方法について何か提案はありますか?

4

1 に答える 1

1

AnimationSet を作成し、これらの各アニメーションを次のようにセットに追加する必要があります。

AnimationSet rollingIn = new AnimationSet(true);

Animation moving = new TranslateAnimation(Animation.RELATIVE_TO_PARENT,-1f,Animation.RELATIVE_TO_PARENT,0,Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0);
moving.setDuration(5000);

rollingIn.addAnimation(moving);

Animation rotating = new RotateAnimation(0, 720, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
rotating.setDuration(5000);

rollingIn.addAnimation(rotating);

setCoinAppear.startAnimation(rollingIn);
于 2012-09-27T22:20:07.870 に答える