我想通过共享元素创建一个类似于微信聊天活动中浏览图片的活动。 但是我发现了。使用相同的代码,我的第一部手机(Android 6.0)中的动画非常流畅。在第二部手机(Android 8.0)中,动画有点不流畅。 您是否遇到过这种情况?你知道原因吗?有解决方案吗?
答案 0 :(得分:0)
如果您的活动如下,我在演示中发现了
getWindow().setSharedElementEnterTransition(TransitionInflater.from(this).inflateTransition(R.transition.changebounds_with_test))
您的转换如下
<?xml version="1.0" encoding="utf-8"?>
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500">
<changeBounds/>
<changeImageTransform/>
<changeClipBounds/>
<changeTransform/>
</transitionSet>
该点是持续时间,该持续时间大于300ms(默认持续时间)。然后,共享元素的动画在Oreo中不平滑。 但是我没有在项目中设置SharedElementEnterTransition,在奥利奥中动画也不流畅。 我认为我的项目具有影响动画的任何代码逻辑,导致持续时间大于300ms。 现在,我不再使用共享元素,而是使用值动画制作过渡动画。