2012-12-17 175 views
0

我有一個FrameLayout並動態添加10個ImageViews到它。 然後我用一個下載的圖像填充它,並想爲它設置動畫效果。 縮放和翻譯動畫從錯誤的位置開始。它應該從屏幕中間開始。當我在運行時在ImageView中更改drawable(使用另一個下載的圖像)並再次設置動畫時,動畫從正確的位置開始(從屏幕中間開始)。動態ImageView動畫

我想我必須以某種方式初始化位置。

這是我如何創建imageViews:

mImages = new ImageView[10]; //Fill Array with ImageViews 
    for(int i = 0; i < bufferCount; i++){ // ,Initialize them 
     mImages[i]= new ImageView(mCtx); 
     mImages[i].setVisibility(View.GONE);//,make them Invisible 
     ContentFrame.addView(mImages[i]); //and add them to the view 
    } 

,這是我的動畫:

 Animation animation = AnimationUtils.loadAnimation(mCtx ,R.anim.anim1); 
     animation.setAnimationListener(mAnimationDone); 

     mImages[imgPos].setVisibility(View.VISIBLE); 
     mImages[imgPos].startAnimation(animation); 

回答

0

我的動畫

<scale 
android:fromXScale="1.0" 
android:fromYScale="1.0" 
android:toXScale="2.0" 
android:toYScale="2.0" 
android:pivotX="50%" android:pivotY="50%" 
/> 


<alpha android:fromAlpha="1.0" 
    android:toAlpha="0.5" 
    /> 

</set>