一、屬性動畫的基本使用
? ?1.比較常用的幾個動畫類
? ? ?ValueAnimator、ObjectAnimator括饶、AnimatorSet
? ? ?ObjectAnimator繼承自Valueanimator
? ? ?maAnitorSet是動畫集合暇藏,可以定義一組動畫
? ?2.具體用法
? ? ?(1)讓一個對象(view)沿著Y軸向上平移一段距離
Objectanimator.ofFloat(View,"translationY",-view.getHight()).star();
? ? ? ?( 2 ) 改變一個對象的背景屬性
ValueAnimator ?colorAnim = ObjectAnimator.ofInt(this,"backgroungColor",0xFFFF8080,0FF8080FF);
colorAnim.setDuration(3000);//動畫的時長
? ? ?(3)動畫集合
AnimatorSet set = new AnimatorSet();
set.playTogether{
ObjectAnimator.ofFloat(view,"rotationX",0,360); //旋轉(zhuǎn)
ObjectAnimator.ofFloat(view,"rotation",0,90);
ObjectAnimator.ofFloat(view,"translationX",0,90); 平移
ObjectAnimator.ofFloat(view,"scaleX",0,1.5f); //縮放
ObjectAnimator.ofFloat(view,"alpha",1,0.25f,1);
}
? ? ( 4 ) xml文件中使用屬性動畫(放在res/animator/property_animator.xml)
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:ordering="together">
<objectAnimator
android:propertyName="x"作用對象的屬性名稱
android:duration="300"動畫的時長
android:valueFrom="100"屬性的開始值
android:valueTo="200"屬性的結(jié)束值
android:startOffset="100"動畫的延遲時間
android:repeatCount="3"動畫重復(fù)次數(shù)
android:repeatMode="restart"動畫重復(fù)模式
android:valueType="intType"propertyName的屬性類型(intType floatTYpe)
/>
使用 :
AnimatorSet set =(AnimatorSet)AnimatorInflater.loadAnimator(Context,R.anim.property_animator.xml);
set.setTarget(view);
set.star();