package cn.itcast.propertyanimator; import android.os.Bundle; import android.animation.Animator; import android.animation.AnimatorInflater; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.Animation; import android.view.animation.TranslateAnimation; import android.widget.ImageView; import android.widget.Toast; public class MainActivity extends Activity { private ImageView iv; private ObjectAnimator oa1; private ObjectAnimator oa2; private ObjectAnimator oa3; private ObjectAnimator oa5; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv = (ImageView) findViewById(R.id.iv); iv.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "�����ѽ", 0).show(); } }); } public void translate(View v){ // //����ƽ�Ʋ��䶯�� // TranslateAnimation ta = new TranslateAnimation(0, 100, 0, 0); // //���ö�������ʱ�� // ta.setDuration(2000); // //���ö���ͣ���ڽ��λ�� // ta.setFillAfter(true); // iv.startAnimation(ta); //�������Զ���ʦ //arg0:ָ�����Ŷ������� //arg1:Ҫ���ĸ����Ե�ֵ //arg2:Ҫ�ĵ��µ�ֵ oa1 = ObjectAnimator.ofFloat(iv, "translationX", 0, 70, 20, 120); oa1.setDuration(2000); oa1.setRepeatCount(1); oa1.setRepeatMode(ObjectAnimator.REVERSE); //��ʼ�������Զ��� oa1.start(); } public void scale(View v){ oa2 = ObjectAnimator.ofFloat(iv, "scaleY", 0.5f, 1.5f, 0.7f, 2); oa2.setDuration(2000); oa2.setRepeatCount(1); oa2.setRepeatMode(ObjectAnimator.REVERSE); //��ʼ�������Զ��� oa2.start(); } public void alpha(View v){ oa3 = ObjectAnimator.ofFloat(iv, "alpha", 0.3f, 0.7f, 0.4f, 1); oa3.setDuration(2000); oa3.setRepeatCount(1); oa3.setRepeatMode(ObjectAnimator.REVERSE); //��ʼ�������Զ��� oa3.start(); } public void rotate(View v){ oa5 = ObjectAnimator.ofFloat(iv, "rotationY", 0, 200, 45, 360); oa5.setDuration(2000); oa5.setRepeatCount(1); oa5.setRepeatMode(ObjectAnimator.REVERSE); //��ʼ�������Զ��� oa5.start(); } public void fly(View v){ //����һ������ʦ���� AnimatorSet as = new AnimatorSet(); //һ��һ��װ��һ��һ���� // as.playSequentially(oa1, oa2, oa3, oa5); //һ��װ��һ��� as.playTogether(oa1, oa2, oa3, oa5); //���ò��Ŷ����Ķ��� as.setTarget(iv); as.start(); } public void loadXml(View v){ //����xml��������Զ��� Animator at = AnimatorInflater.loadAnimator(this, R.animator.objectanimator); at.setTarget(iv); at.start(); } }