我只想使用在XML文件中定义的objectAnimator
。我想放两个objectAnimators
,并想在我的代码中选择要使用的代码。
这就是我设置propertyName
的XML文件的样子,稍后我想在代码中访问它:
<?xml version"1.0" encodin="utf-8"?>
<set xmlns:android="..."
<objectAnimator
android:propertyName="animX"
android:duration="1000"
android:valueFrom="FFFFFF"
android:valueTo="FF0000" />
<objectAnimator
android:propertyName="animY"
android:duration="1000"
android:valueFrom="FF0000"
android:valueTo="FFFFFF" />
</set>
那是代码,我要在其中访问
propertyName
定义的objectAnimator
:ObjectAnimator anim = ObjectAnimator.ofFloat(view, "animX");
anim.setTarget(anim);
anim.start();
不幸的是,这不是它的工作方式,我真的很努力地找到一种访问我想要的objectAnimator的解决方案。
最佳答案
问题是两件事之一:
1)每个ObjectAnimator
都必须是自己的,然后在您添加动画师(通过final ObjectAnimator animator = (ObjectAnimator) AnimatorInflater.loadAnimator(context, resID);
)并将其设置在视图上之后添加到集合中
2)如果XML给您IDE错误,请检查您的ObjectAnimators
是否在/animator
文件夹中,而不是/anim
目录中的/res
文件夹中
编辑:/animators
无法识别,但/animator
被识别
关于android - Android-如何在XML中使用ObjectAnimator,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35258018/