我在某些设备上对 ObjectAnimator 类进行了一些测试,除了一个设备外,一切都很好:Huawei P8 Lite 2017。
在此设备上,View 在动画开始时“消失”并在结束时“出现”。仅当我使用 AnimatorSet/Animator(Java 代码或 XML)时才会出现此问题,但使用旧动画类(TranslateAnimation、AlphaAnimation...)的动画效果很好。
以下是没有问题的设备列表: Nexus 5 Nexus 5X Nexus 9 HTC One M9 Samsung GS4 Pixel XL Alcatel OneTouch Idol 5
这个华为有什么问题?
编辑:我做了一些其他的测试,问题似乎只与旋转动画有关。
ObjectAnimator r = ObjectAnimator.ofFloat(myView, View.ROTATION_Y, 540);
r.setDuration(5000);
r.start();
适用于除华为以外的所有设备。
如果我用 ALPHA 或 TRANSLATION_X 或 Y 替换 ROTATION_Y,它在华为上工作。
这是一个或多或少相同问题的链接: ObjectAnimator 导致 ImageView 消失