アニメーションのスケールアニメーション

3039 ワード

Scaleアニメーション
ズームとは、画像や文字などを拡大・縮小することを意味します.次にコードの作成を開始します.重要な属性パラメータに関する説明はすべてコードにあります.
1、mainを書く.xmlファイル.


    

、作成MainActivity.JAvaファイル.
package com.example.dell.bitmapproject;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
import android.view.animation.ScaleAnimation;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {
    private ImageView image;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        image =(ImageView)findViewById(R.id.image);
        image.setOnClickListener(new OnClickListenerImpl());
    }
    private class OnClickListenerImpl implements View.OnClickListener {
        @Override
        public void onClick(View v) {
            /*
                AnimationSet          ,true    Animation interpolator
                false       。
                Interpolator          ,        ,          
                accelerated(  ),decelerated(  ),repeated(  ),bounced(  ) 。
             */

            AnimationSet animationSet = new AnimationSet(true);
            /*
                    :
                         :X            (fromX)。1      
                         :X         (toX)   ,0       
                         :Y           (fromY)
                         :Y           (toY)
                         :pivotXType    X          
                         :pivotXValue         X       
                         :pivotXType    Y          
                         :pivotYValue         Y       

                   (     ,     ),(     ,     )           
                    0.5f       
             */
            ScaleAnimation scaleAnimation = new ScaleAnimation(1,0.5f,1,0.5f,
                    Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
            //3     
            scaleAnimation.setDuration(2000);
            // AlphaAnimation              AnimationSet 
            animationSet.addAnimation(scaleAnimation);
            //    
            MainActivity.this.image.startAnimation(animationSet);
        }
    }
}
実はアニメーションの設定に関して難しくなくて理解して、ただいくつか属性のパラメータは覚えにくくて、多く何度も使うのがよくなっただけです.