在上一篇Android動(dòng)畫(huà)詳解(一)補(bǔ)間動(dòng)畫(huà)中我們提到過(guò)一個(gè)叫插值器的東西,看名字一頭霧水完全不知道是什么神奇玩意。其實(shí)用人話翻譯過(guò)來(lái)就是速度模型或者速度曲線的意思。為動(dòng)畫(huà)設(shè)置插值器就是設(shè)定動(dòng)畫(huà)的速度模型,就是設(shè)置它是怎么動(dòng)的,先加速再加速呀、一直減速呀、勻速的運(yùn)動(dòng)啊。插值器不只是補(bǔ)間動(dòng)畫(huà)需要設(shè)置啊,后面要講的屬性動(dòng)畫(huà)一樣有插值器。具體效果一看動(dòng)圖便知。
1、AccelerateDecelerateInterpolator
先加速運(yùn)動(dòng)再減速知道終點(diǎn)處,這也是默認(rèn)的Interpolator,如果不setInterpolator(interpolator),動(dòng)畫(huà)以該方式運(yùn)動(dòng)。

2、AccelerateInterpolator
一直加速前進(jìn),在終點(diǎn)處驟停。

3、AnticipateInterpolator
先往回拉一小段距離,在先前運(yùn)動(dòng)。

4、AnticipaOvershootInterpolator
先往回拉一小段距離,在先前運(yùn)動(dòng),最后超出終點(diǎn)一小段距離再回到終點(diǎn)。

5、BounceInterpolator
向前運(yùn)動(dòng),在終點(diǎn)處回彈幾下。

6、CycleInterpolator
CycleInterpolator(float cycles),參數(shù)表示來(lái)回運(yùn)動(dòng)次數(shù)。在起點(diǎn)和終點(diǎn)之間來(lái)回運(yùn)動(dòng),重復(fù)幾次由它的cycles參數(shù)決定。

7、DecelerateInterpolator
初速度最大,然后一直加速運(yùn)動(dòng)到終點(diǎn)。

8、LinearInterpolator
勻速運(yùn)動(dòng)。

9、OvershootInterpator
它跟AnticipaOvershootInterpolator的區(qū)別是,剛開(kāi)始的時(shí)候不需要往后拉一小段距離;相同之處是運(yùn)動(dòng)地超過(guò)終點(diǎn)一部分然后回到終點(diǎn)。
