0

FrameLayoutがあり、それに動的に10個のImageViewを追加します。次に、ダウンロードした画像を入力して、アニメーション化します。スケールと移動のアニメーションが間違った位置から始まります。画面の中央から開始する必要があります。実行時に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);
4

1 に答える 1

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>
于 2012-12-17T19:31:39.337 に答える