Android-ObservableScrollView という、パララックスなスクロール UI を実現するためのライブラリがあります。
このライブラリを利用して、ObservableScrollViewCallbacks を継承した Activity(Kotlin で定義)を作ると、画面をタップしたときに以下のようなエラーに遭遇することがありました。
java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter scrollState
パラメータscrollState
は Null が許可されていないにも関わらず Null が指定されてるぞゴルァというエラーです。
このエラーで検索してみると、Kotlin と Java が混ざったときの Null の扱いに気をつけてコードを書かないといけないと解説する記事が見つかると思います。
今回のケースでは定義が義務づけられる onUpOrCancelMotionEvent
のメソッドに指定したパラメータの型が悪いことが分かったので、パラメータ scrollState
を Null 許可な型にしてあげました。
override fun onUpOrCancelMotionEvent(scrollState: ScrollState?): Unit { }
これで OK!