1

私は持っていImageViewます。したいこと:
1 - ビューを縮小する
2 - 画像リソースを変更する
3 - ビューを縮小する

コードの次のセクションでこれを試みましたが、うまくいきません。3 行目が存在しないように動作します。誰かが私が間違っていることを教えてもらえますか?

Animation anim = AnimationUtils.loadAnimation(this, R.anim.scale);
Animation animo = AnimationUtils.loadAnimation(this, R.anim.scale_out);
i.startAnimation(anim);
i.setImageResource(R.drawable.logoc);
i.startAnimation(animo);

スケール.xml:

 <?xml version="1.0" encoding="utf-8"?>
 <scale xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1.0" 
android:toXScale="0.125"
android:fromYScale="1.0" 
android:toYScale="0.125" 
android:pivotX="50%"
android:pivotY="50%" 
android:startOffset="0" 
android:duration="400"
android:fillBefore="true" />

スケールアウト.xml:

<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1.0" 
android:toXScale="4.0"
android:fromYScale="1" 
android:toYScale="4.0" 
android:startOffset="400" 
android:pivotX="50%"
android:pivotY="50%"
android:duration="800"
 />
4

1 に答える 1

2

私はあなたがこのようにしてみるべきだと思います:

i.startAnimation(anim);
if (anim.hasEnded())
{
    i.setImageResource(R.drawable.logoc);
    i.startAnimation(animo);
}

編集:

わかりました、私は間違っていました:これは機能します:

public class MyAnimationListener implements AnimationListener {

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

            i.setImageResource(R.drawable.bg);
            i.startAnimation(animo);

        }

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

        }

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

        }

    }

MyAnimationListener mListener = new MyAnimationListener();
        anim.setAnimationListener(mListener);
        i.startAnimation(anim);
于 2012-12-06T12:55:10.820 に答える