通过本指南开始实现具有共享元素和动画的开放图像.

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

但有一个例外:

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)

推荐答案

从谷歌上找不到关于这个问题的任何信息,这就是我发布这个帖子的原因.

Problem was in duration parameter.

您可以这样修复它:

Need to remove duration from xml, and set it after TransitionSet created in code.

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

霍普帮助了别人.

Kotlin相关问答推荐

为什么";";.equals(1)在柯特林语中是有效的,但";";=1是无效的?

升级使用jOOQ Gradle插件生成代码失败

合并状态流

通过快捷键手动砍掉功能参数等

如何在 Jetpack Compose 中启动和停止动画

将 java Optional 转换为 Kotlin Arrow Option

Kotlin 中私有集的完整语法 struct 是什么?

如何在 Compose 中创建可重用的修饰符?

添加 Kapt 插件后 - 执行 org.jetbrains.kotlin.gradle.internal.KaptExecution 时发生故障

是否可以通过超时暂停协程?

Saripaar formvalidation 在 kotlin 中第二次不起作用

从 Java 调用 Kotlin 高阶函数

为什么 Kotlin 需要函数引用语法?

将 Gradle 子元素与 Kotlin 多平台一起使用

在 Kotlin 中通过反射获取 Enum 值

Kotlin 有 array.indexOf 但我无法弄清楚如何做 array.indexOfBy { lambda }

将多个 Kotlin 流合并到一个列表中,而无需等待第一个值

Kotlin val difference getter override vs assignment

将字符串编码为Kotlin中的UTF-8

如何在 Kotlin 中按字母顺序对字符串进行排序