[英]Android - Bundle savedInstanceState is null in Fragment onCreate() and onCreateView()
[英]Android kotlin onCreate(savedInstanceState: Bundle?) cause IllegalArgumentException
第一個 Activity 沒有啟動Bundle?
.
class FirstActivity : Activity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
}
引起:java.lang.IllegalArgumentException:參數指定為非空為空:方法kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull,參數包
當override fun onCreate(savedInstanceState: Bundle)
時override fun onCreate(savedInstanceState: Bundle)
發生此錯誤
但是,我修復了override fun onCreate(savedInstanceState: Bundle?)
那是在應用程序類而不是活動中發生的錯誤。
需要將 Bundle 更改為“Bundle”? Activity 和 Application 類。
override fun onActivityCreated(activity: Activity, bundle: Bundle?) {
}
override fun onActivitySaveInstanceState(activity: Activity, bundle: Bundle?) {}
當我自動將 .java 交換為 .kt 時,我遇到了同樣的錯誤。 但真正的錯誤點不在 Activity 中。 就我而言,錯誤的地方是 ActivityLifecycleCallbacks,其中某些參數缺少 '?' 在交換。
錯誤:
override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle)
override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle)
正確:
override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?)
override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle?)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.