我有一个简单的应用程序,在点击按钮时翻转按钮。 当按钮有一些高程时,动画会严重断断续续并且在LogCat上显示这一行:
W / OpenGLRenderer:在视图上错误地调用buildLayer:adg,销毁图层......
真正有趣的是,当我打开屏幕上的GPU分析时,动画运行良好。
按钮:
<Button
android:id="@+id/button"
android:text="a Button"
android:layout_width="wrap_content"
android:layout_height="200dp"
android:stateListAnimator="@null"
android:elevation="2dp"/>
代码:
@Override
public void onClick(final View v) {
v.animate().rotationX(90).withEndAction(new Runnable() {
@Override
public void run() {
v.setRotationX(-90);
v.animate().rotationX(0).start();
}
}).start();
}
这是在带有AOSP 5.0.1的Nexus 5上运行。
有人可以解释发生了什么吗?