[Android]点击按钮进入下一个Activity时显示动画效果
动画效果写在xml里,
在按键的onClickListener里如果写成这样
 @Override
        public void onClick( View v )
        {
            Animation hang_fall = AnimationUtils.loadAnimation( Curriculum.this, R.anim.hang_fall );
            v.startAnimation( hang_fall );
            Intent i = new Intent( ThisActivity.this, NextActivity.class );
            ThisActivity.this.startActivity( i );
        }
那么Intent和animation是同时执行的,看不到动画效果,
应该这样写——加入一个AnimationListener
final ImageView ib = (ImageView)this.findViewById( R.id.photo );
    ib.setOnClickListener( new OnClickListener( ) {
        @Override
        public void onClick( View v ) {
    Animation hang_fall = AnimationUtils.loadAnimation(Curriculum.this, R.anim.hang_fall );
    hang_fall.setAnimationListener(new Animation.AnimationListener()
        {
            public void onAnimationEnd(Animation animation)
            {
                Intent i = new Intent( ThisActivity.this, NextActivity.class );
                ThisActivity.this.startActivity( i );
            }
            public void onAnimationRepeat(Animation animation)
            {
                // Do nothing!
            }
            public void  onAnimationStart(Animation animation)
            {
                // Do nothing!
            }
        });
    v.startAnimation( hang_fall );
} );
 
                    
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号