在Android中为两个视图应用两个动画

时间:2013-12-02 04:36:32

标签: android animation flip sametime

在我的项目中,我必须用12张牌创建一个游戏。在比赛开始时,所有人都面朝下。如果我选择一张卡,它将面朝上。如果我继续选择另一张卡片,如果两张面朝上的卡片的图像相同,那么卡片就会消失。如果没有,卡片将再次面朝下。

我正在使用Android 2.2进行编码,我使用这个关于fipping动画的例子: android-animaions-3d-flip

但是当我选择一张卡片时,我卡住了,之后,我继续选择另一张卡片,如果它们是相同的,那么它们都会消失。这种情况正常。但如果它们不同,第二张卡甚至不是正面朝上的。我认为问题可能在于同时启动2个动画。 以下是两张卡不同的情况下的代码:

 Flip3dAnimation rotation1 = new Flip3dAnimation(0, -90, centerX1, centerY1);
 rotation1.setDuration(250);
 rotation1.setFillAfter(true);
 rotation1.setInterpolator(new AccelerateInterpolator());
 rotation1.setAnimationListener(new DisplayNextView(isFirstImage[flipRid.get(0).x*3 +                 flipRid.get(0).y ], image11, image12 ));
                            image12.startAnimation(rotation1);

 Flip3dAnimation rotation2 = new Flip3dAnimation(0, -90, centerX2, centerY2); 
 rotation2.setDuration(250);
 rotation2.setFillAfter(true);
 rotation2.setInterpolator(new AccelerateInterpolator());
 rotation2.setAnimationListener(new DisplayNextView(isFirstImage[flipRid.get(1).x*3 + flipRid.get(1).y ], image21, image22 ));

 image12.startAnimation(rotation1); // First card works
 image22.startAnimation(rotation2); // Second card not work correctly

请帮帮我,谢谢。

1 个答案:

答案 0 :(得分:2)

使用此example并将您的3D翻转动画示例与此结合,然后解决您的问题。