public class ViewPropertyAnimator
extends Object
java.lang.Object | |
↳ | android.view.ViewPropertyAnimator |
此类可以在View对象上自动优化动画选择属性。 如果View对象上只有一个或两个属性被设置为动画,则使用ObjectAnimator
; ObjectAnimator调用的属性设置器能够正确地设置属性并使视图无效。 但是,如果多个属性同时动画,或者如果你只是想要一个更方便的语法来动画一个特定的属性,那么ViewPropertyAnimator可能更适合这个任务。
这个类可以为几个同时动画提供更好的性能,因为它将优化无效调用,使其只针对多个属性进行一次,而不是每个动画属性独立地导致其自身失效。 另外,使用这个类的语法可能更容易使用,因为调用者只需要告诉View对象要动画的属性,以及要动画的值或者动画的值,并且该类处理配置底层Animator类的细节,以及开始吧。
这个类不是由调用者构造的,而是由视图的属性来动画的。 调用animate()
将返回对该视图的相应ViewPropertyAnimator对象的引用。
Public methods |
|
---|---|
ViewPropertyAnimator |
alpha(float value) 此方法将使View的 |
ViewPropertyAnimator |
alphaBy(float value) 此方法将使视图的 |
void |
cancel() 取消当前正在运行或挂起的所有属性动画。 |
long |
getDuration() 返回属性动画的当前持续时间。 |
TimeInterpolator |
getInterpolator() 返回此动画使用的定时插补器。 |
long |
getStartDelay() 返回属性动画的当前startDelay。 |
ViewPropertyAnimator |
rotation(float value) 此方法将使视图的 |
ViewPropertyAnimator |
rotationBy(float value) 此方法将使View的 |
ViewPropertyAnimator |
rotationX(float value) 此方法将使View的 |
ViewPropertyAnimator |
rotationXBy(float value) 此方法将使View的 |
ViewPropertyAnimator |
rotationY(float value) 此方法将导致View的 |
ViewPropertyAnimator |
rotationYBy(float value) 此方法将使视图的 |
ViewPropertyAnimator |
scaleX(float value) 此方法将使View的 |
ViewPropertyAnimator |
scaleXBy(float value) 此方法将使View的 |
ViewPropertyAnimator |
scaleY(float value) 此方法将使View的 |
ViewPropertyAnimator |
scaleYBy(float value) 此方法将使View的 |
ViewPropertyAnimator |
setDuration(long duration) 为动画所请求的属性的底层动画设置持续时间。 |
ViewPropertyAnimator |
setInterpolator(TimeInterpolator interpolator) 为动画所需属性的底层动画设置插补器。 |
ViewPropertyAnimator |
setListener(Animator.AnimatorListener listener) 为运行属性动画的基础动画设置器中的事件设置侦听器。 |
ViewPropertyAnimator |
setStartDelay(long startDelay) 为动画所请求的属性的底层动画设置startDelay。 |
ViewPropertyAnimator |
setUpdateListener(ValueAnimator.AnimatorUpdateListener listener) 为运行属性动画的底层ValueAnimator中的更新事件设置侦听器。 |
void |
start() 立即开始当前未决的属性动画。 |
ViewPropertyAnimator |
translationX(float value) 此方法将使视图的 |
ViewPropertyAnimator |
translationXBy(float value) 此方法将使View的 |
ViewPropertyAnimator |
translationY(float value) 此方法将使视图的 |
ViewPropertyAnimator |
translationYBy(float value) 此方法将使视图的 |
ViewPropertyAnimator |
translationZ(float value) 此方法将使View的 |
ViewPropertyAnimator |
translationZBy(float value) 此方法将使View的 |
ViewPropertyAnimator |
withEndAction(Runnable runnable) 指定下一个动画结束时要执行的操作。 |
ViewPropertyAnimator |
withLayer() 与此ViewPropertyAnimator关联的视图将在下一个动画期间将其 |
ViewPropertyAnimator |
withStartAction(Runnable runnable) 指定下一个动画运行时发生的操作。 |
ViewPropertyAnimator |
x(float value) 此方法将导致视图的 |
ViewPropertyAnimator |
xBy(float value) 此方法将使视图的 |
ViewPropertyAnimator |
y(float value) 此方法将使视图的 |
ViewPropertyAnimator |
yBy(float value) 此方法将使View的 |
ViewPropertyAnimator |
z(float value) 此方法将使视图的 |
ViewPropertyAnimator |
zBy(float value) 此方法将使View的 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
ViewPropertyAnimator alpha (float value)
此方法将使视图的alpha
属性动画到指定的值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator alphaBy (float value)
此方法将使View的alpha
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
long getDuration ()
返回属性动画的当前持续时间。 如果持续时间在此对象上设置,则返回该值。 否则,返回底层动画的默认值。
Returns | |
---|---|
long |
The duration of animations, in milliseconds. |
也可以看看:
TimeInterpolator getInterpolator ()
返回此动画使用的定时插补器。
Returns | |
---|---|
TimeInterpolator |
The timing interpolator for this animation. |
long getStartDelay ()
返回属性动画的当前startDelay。 如果在此对象上设置了startDelay,则返回该值。 否则,返回底层动画的默认值。
Returns | |
---|---|
long |
The startDelay of animations, in milliseconds. |
也可以看看:
ViewPropertyAnimator rotation (float value)
此方法将导致View的rotation
属性被动画为指定的值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator rotationBy (float value)
此方法将使View的rotation
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator rotationX (float value)
此方法将使View的rotationX
属性动画成指定值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator rotationXBy (float value)
此方法将使视图的rotationX
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator rotationY (float value)
此方法将使View的rotationY
属性动画成指定值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator rotationYBy (float value)
此方法将使视图的rotationY
属性通过指定的值进行动画处理。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator scaleX (float value)
此方法将使视图的scaleX
属性动画成指定值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator scaleXBy (float value)
此方法将使View的scaleX
属性通过指定的值进行动画处理。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator scaleY (float value)
此方法将使View的scaleY
属性动画成指定值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator scaleYBy (float value)
此方法将使View的scaleY
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator setDuration (long duration)
为动画所请求的属性的底层动画设置持续时间。 默认情况下,动画师使用ValueAnimator的默认值。 调用此方法将导致声明的值被使用。
Parameters | |
---|---|
duration |
long : The length of ensuing property animations, in milliseconds. The value cannot be negative. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
ViewPropertyAnimator setInterpolator (TimeInterpolator interpolator)
为动画所需属性的底层动画设置插补器。 默认情况下,动画制作工具使用ValueAnimator的默认插补器。 调用此方法将导致声明的对象被使用。
Parameters | |
---|---|
interpolator |
TimeInterpolator : The TimeInterpolator to be used for ensuing property animations. A value of null will result in linear interpolation. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
ViewPropertyAnimator setListener (Animator.AnimatorListener listener)
为运行属性动画的基础动画设置器中的事件设置侦听器。
Parameters | |
---|---|
listener |
Animator.AnimatorListener : The listener to be called with AnimatorListener events. A value of null removes any existing listener. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator setStartDelay (long startDelay)
为动画所请求的属性的底层动画设置startDelay。 默认情况下,动画师使用ValueAnimator的默认值。 调用此方法将导致声明的值被使用。
Parameters | |
---|---|
startDelay |
long : The delay of ensuing property animations, in milliseconds. The value cannot be negative. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
ViewPropertyAnimator setUpdateListener (ValueAnimator.AnimatorUpdateListener listener)
为运行属性动画的底层ValueAnimator中的更新事件设置侦听器。 请注意,底层的动画制作器在0和1之间进行动画制作(这些值然后由ViewPropertyAnimator内部转换为实际属性值)。 所以动画师不能提供有关由ViewPropertyAnimator动画的属性的当前值的信息,尽管可以查询视图对象本身以获取当前值。
Parameters | |
---|---|
listener |
ValueAnimator.AnimatorUpdateListener : The listener to be called with update events. A value of null removes any existing listener. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
void start ()
立即开始当前未决的属性动画。 调用start()
是可选的,因为所有动画在下一次机会时自动启动。 但是,如果动画需要立即同步启动(而不是在层次结构处理下一个事件时(即动画以其他方式开始时),则可以使用此方法。
ViewPropertyAnimator translationX (float value)
此方法将导致视图的translationX
属性被动画化为指定的值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator translationXBy (float value)
此方法将使View的translationX
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator translationY (float value)
此方法将使视图的translationY
属性动画为指定的值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator translationYBy (float value)
此方法将使View的translationY
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator translationZ (float value)
此方法将使View的translationZ
属性动画化为指定的值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator translationZBy (float value)
此方法将使View的translationZ
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator withEndAction (Runnable runnable)
指定下一个动画结束时要执行的操作。 该动作仅在动画正常结束时才运行; 如果在该动画中取消ViewPropertyAnimator,则可运行的程序将不会运行。 此方法与withStartAction(Runnable)
一起用于帮助在应用程序中使用其他动画或动作来编排ViewPropertyAnimator动画。
例如,以下代码将视图动画化为x = 200,然后返回0:
Runnable endAction = new Runnable() { public void run() { view.animate().x(0); } }; view.animate().x(200).withEndAction(endAction);
Parameters | |
---|---|
runnable |
Runnable : The action to run when the next animation ends. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
ViewPropertyAnimator withLayer ()
与此ViewPropertyAnimator相关联的视图将在下一个动画期间将其layer type
设置为LAYER_TYPE_HARDWARE
。 正如在LAYER_TYPE_HARDWARE
的文档中LAYER_TYPE_HARDWARE
,内部使用的图层的实际类型取决于视图的运行时情况。 如果活动和这个视图是硬件加速的,那么图层也会加速。 如果活动或视图未加速,则图层实际上与LAYER_TYPE_SOFTWARE
相同。
该状态不是持久的,无论是在视图还是在ViewPropertyAnimator上:视图的图层类型将在动画结束时调用此方法时恢复,而ViewPropertyAnimator上的此设置仅对下一个动画有效。 请注意,调用此方法,然后独立设置视图的图层类型(通过直接调用setLayerType(int, android.graphics.Paint)
)将导致一些不一致,包括在动画结束时将图层类型恢复为其之前的Layer()值。
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
ViewPropertyAnimator withStartAction (Runnable runnable)
指定下一个动画运行时发生的操作。 如果有一个startDelay
集在这个ViewPropertyAnimator,那么行动将运行后startDelay所占用的到期,实际动画开始时。 此方法与withEndAction(Runnable)
一起用于帮助在应用程序中使用其他动画或操作来编排ViewPropertyAnimator动画。
Parameters | |
---|---|
runnable |
Runnable : The action to run when the next animation starts. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
ViewPropertyAnimator x (float value)
此方法将使View的x
属性动画成指定值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator xBy (float value)
此方法将使View的x
属性通过指定的值进行动画。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator y (float value)
此方法将使View的y
属性动画成指定值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator yBy (float value)
此方法将使View的y
属性通过指定的值进行动画处理。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator z (float value)
此方法将使View的z
属性动画成指定值。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The value to be animated to. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看:
ViewPropertyAnimator zBy (float value)
此方法将使View的z
属性通过指定的值进行动画处理。 已经在该属性上运行的动画将被取消。
Parameters | |
---|---|
value |
float : The amount to be animated by, as an offset from the current value. |
Returns | |
---|---|
ViewPropertyAnimator |
This object, allowing calls to methods in this class to be chained. |
也可以看看: