如何解决动画在物理设备上卡顿,但在模拟器上不卡顿
我试图在欢迎屏幕上实现动画。有一个按钮,当点击它时,使用我制作的 3-4 个动画滑出屏幕上的所有 UI 元素,并且在发生这种变化时意图切换活动,我使用 overridePendingTransation()
方法淡入和淡出活动变化。 这在我的模拟器上完美运行。非常流畅,没有卡顿,只是一个简单的惊人动画但是我想让我们在物理设备上尝试它的那一刻,那就是事情开始的时候去南方。
因此,播放了一些动画以显示欢迎屏幕并且它们运行良好,但是当我按下按钮时动画卡顿并且它们没有完成,而且它只是一团糟。有没有人知道到底发生了什么?
注意:后来我在另一台较新的设备上尝试了它,并且成功了。它无法使用的设备是三星 S7 Edge。但我不认为这不起作用是因为它的手机速度很慢或其他任何原因,因为它不是,而且直到今天它仍然运行良好。
那么你知道这一切背后的原因是什么吗?
在我的模拟器上录制的应用程序: here
和物理设备的记录: here
按钮的 onClickListener 代码:
playButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG,"onClick: button clicked");
// Here you will put the anims for each element
Log.d(TAG,"onClick: animations started");
playButton.startAnimation(slideOutToBottom);
curvedWedgeLeft.startAnimation(slideOutToLeft);
curvedWedgesRight.startAnimation(slideOutToRight);
welcomeText.startAnimation(slideOutToTop);
sideCircleLeft.startAnimation(slideOutToLeft);
sideCircleRight.startAnimation(slideOutToRight);
intentWelcomeToMain = new Intent(getApplicationContext(),MainActivity.class);
startActivity(intentWelcomeToMain);
// This will take the actual view animation
overridePendingTransition(R.anim.fade_in,R.anim.fade_out);
}
});
我请求您查看录音以更好地了解正在发生的事情。非常感谢任何有时间提供帮助的人。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。