的Docs暗示任何价值可与ObjectAnimator
只要你遵循命名约定的使用:
- ,你是动画必须有一个setter函数(对象属性在骆驼案件中)以
set<propertyName>()
的形式。由于 ObjectAnimator在动画 动画中自动更新属性,因此必须能够使用此设置器 方法访问属性。例如,如果属性名称是foo
,则需要有一个 setFoo()
方法。如果这个setter方法不存在,你有三种选择 :
- 添加setter方法的类,如果你有权利 这样做。
- 使用您有权更改的包装类,并且该包装程序使用有效的setter方法接收该值并将 转发给原始对象。
- 改为使用ValueAnimator。
- [...]
对于你的问题,View
有方法setRotation(float)
- 这让你可以使用提示。特别是这里的你将如何与特定TimeInterpolator
做到这一点:
ObjectAnimator anim = ObjectAnimator.ofFloat(myView, "rotation", 0f, 90f);
anim.setDuration(2000); // Duration in milliseconds
anim.setInterpolator(timeInterpolator); // E.g. Linear, Accelerate, Decelerate
anim.start() // Begin the animation
您可以在ObjectAnimator
期望阅读更多细节的文档。
我很好奇,如果是这样的完整列表?在9OldAndroid上,有一个例子可以激活未在列表中指定的视图的背景颜色。 http://nineoldandroids.com/'ObjectAnimator.ofInt(this,“backgroundColor”,/ * Red */0xFFFF8080,/ * Blue */0xFF8080FF);' – 2014-06-19 22:39:40
列表不完整,列表中有“xFraction”和“ yFraction“(在[DevBytes Sliding Fragments示例](https://www.youtube.com/watch?v=xbl5cxfA1n4)中看到) – 2014-09-17 19:22:18
完整的列表将不存在,因为它可以与具有正确名称的任何东西一起使用getter/setter(反射),或通过定义一个自定义属性。请参阅http://stackoverflow.com/a/28381280/1290264。 – bcorso 2015-10-29 16:08:44