2013-09-26 30 views
2

我正在开发一款Android游戏,其中每个级别完成后会显示一个结果活动,显示用户的得分并根据得分给出星星。现在在该结果活动中有3图像浏览灰色星星和那些我想用显示的动画金色星星。但是在播放动画时,灰色的星星会隐藏起来,只有金色的星星似乎在移动,并被置于隐藏的灰星上。 我想知道我怎么能作出这样的最左边的灰色星仍然可见直到一个黄金星来了,就可以坐在星图上的动画效果将显示在Android游戏的结果活动

问题:金色星来了,坐在看不见的灰色明星,但灰色的明星直到金星来应该是可见的,安顿下来就可以完全

enter image description here

问题:最左边的星动画开始时得到无形。

enter image description here

Java代码:

Myanim1 = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.alpha_scale_left); 
starIv1=(ImageView)findViewById(R.id.starGrey1ImageView); 

starIv1.clearAnimation(); 
starIv1.setImageResource(R.drawable.star); 
starIv1.startAnimation(Myanim1); 

动画的XML

<translate 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:fromXDelta="-300%" 
android:toXDelta="0%" 
android:fromYDelta="-700%" 
android:toYDelta="0%" 
android:duration="1200" 
android:zAdjustment="bottom" 
android:interpolator="@android:anim/bounce_interpolator"> 
</translate> 

<rotate 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:duration="1200" 
    android:interpolator="@android:anim/linear_interpolator" 
    android:pivotX="50%" 
    android:pivotY="50%" 

    android:fromDegrees="0" 
    android:toDegrees="360"> 
    </rotate> 

+0

请发表您的代码 –

回答

0

我认为你不能,你必须添加在上面新的ImageView目前在和它的动画。您可以将3个灰色星星保存为一个ImageView并添加3个用于Golden Stars的ImageViews,这些ImageViews将被隐藏并为其添加动画。

如果你想避免它,只需制作双动画。像灰色开始消失 金后出现

事情是这样的: anim1 - 灰色走 amim2 - 金进入

starIv1=(ImageView)findViewById(R.id.starGrey1ImageView); 

starIv1.clearAnimation(); 
anim1.setAnimationListener(new Animation.AnimationListener() { 

     @Override 
     public void onAnimationStart(Animation animation) { 
      // TODO Auto-generated method stub 

     } 

     @Override 
     public void onAnimationRepeat(Animation animation) { 
      // TODO Auto-generated method stub 

     } 

     @Override 
     public void onAnimationEnd(Animation animation) { 
      starIv1.setImageResource(R.drawable.star); 
          starIv1.startAnimation(anim2); 
     } 
    }) 
starIv1.startAnimation(anim1);