簡體   English   中英

Android kotlin onCreate(savedInstanceState: Bundle?) 導致 IllegalArgumentException

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM