Android中属性动画2----ObjectAnimator监听的使用

代码:

package com.zhh.android;

import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.app.Activity;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.Toast;
/**
 * ObjectAnimator
 * 事件监听
 */
public class Main2Activity extends Activity {
    private ImageView imageView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        initView();
        myOnclick();
    }
    private void initView() {
        imageView = (ImageView)findViewById(R.id.imageView);
        setAnimate1();
    }
    private void myOnclick() {
        imageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
               startActivity(new Intent(Main2Activity.this,Main3Activity.class));
            }
        });
    }

    /**
     * 属性动画
     * 动画监听
     */
    private void setAnimate1(){
//      创建属性动画对象,并设置移动的方向和偏移量
//      rotation是imageView的旋转属性
        ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(imageView, "alpha", 0f, 1f);
//      设置移动时间
        objectAnimator.setDuration(1000);
//      监听动画完成结束
        objectAnimator.addListener(new AnimatorListenerAdapter() {
            @Override
            public void onAnimationEnd(Animator animation) {
                super.onAnimationEnd(animation);
                Toast.makeText(Main2Activity.this, "动画结束", Toast.LENGTH_SHORT).show();
            }
        });
//      监听动画
//        objectAnimator.addListener(new Animator.AnimatorListener() {
//            @Override
//            public void onAnimationStart(Animator animation) {
//
//            }
//
//            @Override
//            public void onAnimationEnd(Animator animation) {
              监听动画完成之后,要执行的代码
//                Toast.makeText(Main2Activity.this, "动画执行完成", Toast.LENGTH_SHORT).show();
//            }
//
//            @Override
//            public void onAnimationCancel(Animator animation) {
//
//            }
//
//            @Override
//            public void onAnimationRepeat(Animator animation) {
//
//            }
//        });
//      开始动画
        objectAnimator.start();
    }


}
activity_main2.xml



    


参考视频:

http://www.imooc.com/learn/263

源码下载:

http://download.csdn.net/download/zhaihaohao1/10126123




你可能感兴趣的:(动画)