Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android PropertyValuesHolder在XML定义的动画中使用时会导致崩溃_Android_Android Animation - Fatal编程技术网

Android PropertyValuesHolder在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.

我试图在我用XML定义的动画中使用一些
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)