Android PropertyValuesHolder在XML定义的动画中使用时会导致崩溃
我试图在我用XML定义的动画中使用一些Android PropertyValuesHolder在XML定义的动画中使用时会导致崩溃,android,android-animation,Android,Android Animation,我试图在我用XML定义的动画中使用一些propertyValuesHolder和objectAnimator。当我加载它时,会引发运行时异常,原因是未知动画师名称:propertyValuesHolder 这是直接从ObjectAnimator文档中获取的完整动画: 我从stacktrace得到的原因是: Caused by: java.lang.RuntimeException: Unknown animator name: propertyValuesHolder at android.
propertyValuesHolder
和objectAnimator
。当我加载它时,会引发运行时异常,原因是未知动画师名称:propertyValuesHolder
这是直接从ObjectAnimator
文档中获取的完整动画:
我从stacktrace得到的原因是:
Caused by: java.lang.RuntimeException: Unknown animator name: propertyValuesHolder
at android.animation.AnimatorInflater.createAnimatorFromXml(AnimatorInflater.java:592)
at android.animation.AnimatorInflater.createAnimatorFromXml(AnimatorInflater.java:551)
at android.animation.AnimatorInflater.loadAnimator(AnimatorInflater.java:122)
at android.animation.AnimatorInflater.loadAnimator(AnimatorInflater.java:102)
at android.animation.AnimatorInflater.loadAnimator(AnimatorInflater.java:87)
当我使用的动画不包含
propertyValuesHolder
时,这就起作用了。我在网上找不到任何在XML中使用该标记的示例。我是做错了什么,还是根本没用?我认为原因是在棒棒糖出现之前,propertyValuesHolder XML元素不受支持
如果你看一下,你会发现第一次引用PropertyValuesHolder类是在5.0中。@shadowDroid你的链接404s根据什么相应地更改代码?ValueAnimator页面上的第二个示例定义了一个XML
propertyValuesHolder
,这将导致在上一条注释中未正确放置链接的相同问题。。我不知道您使用PropertyValuesHolder的目的是什么…但它实际用于避免AnimatorSet并使代码可读…检查此链接我了解它的目的,我正在使用它(在上面的示例中,在1秒的时间内为对象的x和y属性设置动画)。我试图在一个用XML定义的动画中实现这一点,而不是一个用编程定义的动画。这应该是可能的,因为文档中有这样的示例(我链接到的文档和您链接到的文档),但是当我尝试从XML文件加载它时会引发异常
Animator animator = AnimatorInflater.loadAnimator(getApplicationContext(), R.animator.example);
animator.setTarget(view);
animator.start();
Caused by: java.lang.RuntimeException: Unknown animator name: propertyValuesHolder
at android.animation.AnimatorInflater.createAnimatorFromXml(AnimatorInflater.java:592)
at android.animation.AnimatorInflater.createAnimatorFromXml(AnimatorInflater.java:551)
at android.animation.AnimatorInflater.loadAnimator(AnimatorInflater.java:122)
at android.animation.AnimatorInflater.loadAnimator(AnimatorInflater.java:102)
at android.animation.AnimatorInflater.loadAnimator(AnimatorInflater.java:87)