android - 将 androidx 生命周期从 2.2.0-alpha03 更新为 alpha04 后,“androidx.transition.TransitionSet 无法转换为 android.transition.Transition”
问题描述
还有一些其他类似的问题,但都参考 Android 支持库。我正在使用新的 androidx 库。
将 androidx 生命周期依赖项从 2.2.0-alpha03 更新到 2.2.0-alpha04 后,我遇到以下崩溃(在 Android 9 上):
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.myapp, PID: 12345
java.lang.ClassCastException: androidx.transition.TransitionSet cannot be cast to android.transition.Transition
at androidx.fragment.app.FragmentTransition.setListenerForTransitionEnd(FragmentTransition.java:307)
at androidx.fragment.app.FragmentTransition.configureTransitionsOrdered(FragmentTransition.java:419)
at androidx.fragment.app.FragmentTransition.startTransitions(FragmentTransition.java:139)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2383)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2341)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:2244)
at androidx.fragment.app.FragmentManager$3.run(FragmentManager.java:422)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7037)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)
版本 2.2.0-alpha05 也有同样的问题。
更新:实际上,似乎 androidx 片段 1.2.0-alpha03 被拉入,这导致了问题。使用片段 1.2.0-alpha02 时,不会发生崩溃。这里添加了有问题的演员表:
调用后发生此崩溃:
supportFragmentManager
.beginTransaction()
.remove(f)
.commit()
我发现的唯一解决方法是删除退出转换:
f.exitTransition = Slide(gravity)
请注意,片段 f 的类型为:androidx.fragment.app.Fragment
有任何想法吗?
解决方案
此问题已在即将发布的 Fragment 1.2.0-beta01 版本中修复。
推荐阅读
- c# - 如何制作一个以一秒延迟响应请求的方法 Asp.net core
- excel - 订单导出文件不显示换行符
- google-chrome - 定义 Chrome DevTools 窗口的默认宽度
- authentication - 使用颤振 twitter_login 包的问题
- excel - 是否可以从 csv 写入现有的 Excel 文件而不关闭它?
- python - Iterate in dictionary for value that matches the first 5 numbers in a filename
- python - 将 txt 文件拆分为较小的文件,但保留标题
- laravel - 如何访问从控制器传递到辅助函数中查看的变量?
- html - 如何使文本和图标水平对齐在屏幕调整大小时保持一致?
- android - GCM 获取用于从服务器发送通知的令牌