通过本指南开始使用共享元素和动画实现开放图像的实现。

https://android-developers.googleblog.com/2018/02/continuous-shared-element-transitions.html

但抓到一个异常(exception):

java.lang.NullPointerException: Attempt to invoke virtual method 'int java.util.ArrayList.size()' on a null object reference
at android.support.transition.TransitionSet.setDuration(TransitionSet.java:196)
at android.support.transition.TransitionSet.setDuration(TransitionSet.java:60)
at android.support.transition.Transition.<init>(Transition.java:278)
at android.support.transition.TransitionSet.<init>(TransitionSet.java:91)
at android.support.transition.TransitionInflater.createTransitionFromXml(TransitionInflater.java:151)
at android.support.transition.TransitionInflater.inflateTransition(TransitionInflater.java:70)

通话时
TransitionInflater.from(context).inflateTransition(R.transition.my_transition)

最佳答案

从Google找不到关于此问题的任何内容,这就是我为什么要发布此内容。

问题在于持续时间参数。

您可以这样解决:

需要从xml中删除持续时间,并在代码中创建TransitionSet之后进行设置。

val transition = TransitionInflater.from(context).inflateTransition(R.transition.my_transition)
transition.duration = 325

希望帮助了某人。

10-07 17:09