首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓ObjectAnimator对ViewPropertyAnimator

安卓ObjectAnimator对ViewPropertyAnimator
EN

Stack Overflow用户
提问于 2016-07-05 13:55:15
回答 1查看 3.1K关注 0票数 6

ObjectAnimator和ViewPropertyAnimator改变属性值有什么区别?

代码语言:javascript
复制
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(myObject, "X", 0.0f, 100.0f);

我尝试了myObject.getX(),而上面的objectAnimator正在进行中,我得到了一个在0.0f到100.0之间的在线值。

代码语言:javascript
复制
myObject.setX(0.0f);
myObject.animate().x(100.0f);

然而,当我myObject.getX()d的时候,我得到了精确的100.0,而高于ViewPropertyAnimator的是持续的。

我不知道是什么让这件事变得不同。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-05 14:14:44

当您请求使用一个x字段动画ViewPropertyAnimator字段时,它实际上并不会动画x字段--它会将translateX字段动画化。这就是为什么您看不到x字段更改的原因。

来自ViewPropertyAnimator.java中的Android源代码

代码语言:javascript
复制
case X:
    renderNode.setTranslationX(value - mView.mLeft);
    break;

另一方面,ObjectAnimator使用反射来动画属性,而不是预先设置支持的操作列表。所以当你告诉它给"X“字段动画时,它直接调用"setX”。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38205324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档