8

私は2つのアニメーションを同時にプログラムではなくXMLファイルで表示したいと思います。回転と翻訳 どのようにすればいいですか?Android:翻訳と回転アニメーション同時に

私には何かを提案してください?????? >

ImageView snowImg1 = (ImageView) findViewById(R.id.snowimg1); 
     snowImg1.setVisibility(0); 
     ImageView snowImg2 = (ImageView) findViewById(R.id.snowimg2); 
     snowImg2.setVisibility(0); 
     ImageView snowImg3 = (ImageView) findViewById(R.id.snowimg3); 
     snowImg3.setVisibility(0); 
     ImageView snowImg4 = (ImageView) findViewById(R.id.snowimg4); 
     snowImg4.setVisibility(0); 
     ImageView snowImg6 = (ImageView) findViewById(R.id.snowimg6); 
     snowImg6.setVisibility(0); 
     ImageView snowImg5 = (ImageView) findViewById(R.id.snowimg5); 
     snowImg5.setVisibility(0); 

     View snowArray[] = {snowImg1, snowImg2, snowImg3, snowImg4, snowImg5, snowImg6}; 

     Animation snowMov7 = new RotateAnimation(0,360, Animation.RELATIVE_TO_SELF,0.5f , Animation.RELATIVE_TO_SELF,0.5f); 
     snowMov7.setRepeatCount(Animation.INFINITE); 
     Animation snowMov1 = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0.1f, Animation.RELATIVE_TO_PARENT, 0.3f, Animation.RELATIVE_TO_PARENT, 0.0f, Animation.RELATIVE_TO_PARENT, 0.9f); 
     snowMov1.setDuration(10000); 
     Animation snowMov2 = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0.3f, Animation.RELATIVE_TO_PARENT, 0.4f, Animation.RELATIVE_TO_PARENT, -0.1f, Animation.RELATIVE_TO_PARENT, 0.9f); 
     snowMov2.setDuration(10100); 
     Animation snowMov3 = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0.5f, Animation.RELATIVE_TO_PARENT, 0.1f, Animation.RELATIVE_TO_PARENT, -0.1f, Animation.RELATIVE_TO_PARENT, 0.9f); 
     snowMov3.setDuration(10200); 
     Animation snowMov4 = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0.7f, Animation.RELATIVE_TO_PARENT, 0.2f, Animation.RELATIVE_TO_PARENT,-0.1f, Animation.RELATIVE_TO_PARENT, 0.9f); 
     snowMov4.setDuration(10300); 
     Animation snowMov5 = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0.6f, Animation.RELATIVE_TO_PARENT, 0.7f, Animation.RELATIVE_TO_PARENT, 0.0f, Animation.RELATIVE_TO_PARENT, 0.9f); 
     snowMov5.setDuration(10400); 
     Animation snowMov6 = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0.9f, Animation.RELATIVE_TO_PARENT, 0.9f, Animation.RELATIVE_TO_PARENT, 0.05f, Animation.RELATIVE_TO_PARENT, 0.9f); 
     snowMov6.setDuration(10500); 

     Animation movArray[] = {snowMov1,snowMov2, snowMov3, snowMov4, snowMov5, snowMov6,snowMov7}; 

     for(int i=0;i<6;i++) 
     { 
      movArray[i].reset(); 
      movArray[i].setFillAfter(true); 
      movArray[i].setAnimationListener(this); 
      snowArray[i].startAnimation(movArray[i]);  
      snowArray[i].startAnimation(movArray[6]); 
     } 

我々はプログラムの中で二回startAnimationを使用することができます???私を助けてください:ここでは

はミリアンペアコードですか?

答えて

17

私はそれを行っていますアニメーションセットを使用してこれを行うことができます。

AnimationSet snowMov1 = new AnimationSet(true); 
     RotateAnimation rotate1 = new RotateAnimation(0,360, Animation.RELATIVE_TO_SELF,0.5f , Animation.RELATIVE_TO_SELF,0.5f); 
     rotate1.setStartOffset(50); 
     rotate1.setDuration(9500); 
     snowMov1.addAnimation(rotate1); 
     TranslateAnimation trans1 = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 0.1f, Animation.RELATIVE_TO_PARENT, 0.3f, Animation.RELATIVE_TO_PARENT, 0.0f, Animation.RELATIVE_TO_PARENT, 0.9f); 
     trans1.setDuration(12000); 
     snowMov1.addAnimation(trans1); 

このようにして、複数のアニメーションを設定することができます。

関連する問題