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

在Android中为两个视图应用两个动画,android,animation,flip,sametime,Android,Animation,Flip,Sametime,在我的项目中,我必须创建一个有12张牌的游戏。比赛一开始,他们都面朝下。如果我选了一张牌,它会正面朝上。如果我继续选择另一张牌,如果两张正面朝上的牌的图像相同,这些牌将消失。如果没有,卡将再次面朝下 我正在使用Android 2.2进行编码,我使用了以下关于飞行动画的示例: 但是当我选择一张卡片时,我遇到了一个问题,在那之后,我继续选择另一张,如果它们是相同的,那么它们都是无效的。这个箱子工作正常。但如果他们不一样,第二张牌甚至不是正面朝上的。我认为问题可能在于同时开始两个动画。 以下是我在两

在我的项目中,我必须创建一个有12张牌的游戏。比赛一开始,他们都面朝下。如果我选了一张牌,它会正面朝上。如果我继续选择另一张牌,如果两张正面朝上的牌的图像相同,这些牌将消失。如果没有,卡将再次面朝下

我正在使用Android 2.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

请帮助我,谢谢。

使用此选项,并将3d翻转动画示例与此相结合,然后您的问题就解决了。

您可以在此处找到类似的问题。