插值器:就是乙個函式,將時間t經過乙個函式的變換對映到t',從而影響動畫的運動軌跡和速度變化
android系統提供的預設插值器:acceleratedecelerateintepolator
動畫開始與結束的地方速率改變比較慢,在中間的時候加速
accelerateinterpolator
動畫開始的地方速率改變比較慢,然後開始加速
anticipateintepolator
開始的時候向後然後向前甩
anticipateovershootinterpolator
開始的時候向後然後向前甩一定值後返回最後的值
bounceinterpolator
動畫結束的時候彈起
cycleinterpolator
decelerateinterpolator
在動畫開始的地方快然後慢
linearinterpolator
以常量速率改變
overshootinterpolator
向前甩一定值再回到原來位置
如何實現乙個插值器
publicclass easeinoutcircinterpolator implements
timeinterpolator
input -=2;
return (float)(0.5*(math.sqrt(1-input*input)+1));
}}
使用
manimator = valueanimator.offloat(1.0f);manimator.setinterpolator(
neweaseinoutcircinterpolator());
manimator.addupdatelistener(
newvalueanimator.animatorupdatelistener()
});manimator.setduration(1000);
9中動畫插值器
accelerateinterpolator 加速,開始時慢中間加速 decelerateinterpolator 減速,開始時快然後減速 acceleratedecelerateinterolator 先加速後減速,開始結束時慢,中間加速 bounceinterpolator 跳躍,快到目的值時值...
動畫之插值器和估值器
根據時間流逝的百分比計算出當前屬性值改變的百分比 用於勻速動畫 動畫兩頭慢,中間快 動畫越來越慢 還有其他系統內建插值器 cycleinterpolator 週期運動 bounceinterpolator 最後階段彈球效果 overshootinterpolator 快速完成動畫,超出再回到結束樣式...
interpolater插值器與屬性動畫的使用
屬性動畫 連同控制項本身一起動畫 所有的屬性動畫都是繼承於animator的,animator下分為valueanimator與viewpropertyanimator 其中valueanimator下又分為objectanimator 改變乙個屬性,如只改便拉伸x,拉伸y,與animatorset...