问题描述
如何通过数据绑定将null
作为参数传递?
什么时候来
android:onClick="@{() -> viewmodel.switchFunction(null)}"
我得到cannot find method switchFunction(java.lang.Object)
例外。
fun switchFunction(param: MyClass?) {
}
解决方法
事实证明,这非常容易-只需指定null
的类型即可:
<data>
<import type="classes.MyClass" />
</data>
...
android:onClick="@{() -> viewModel.switchFunction((MyClass) null)}"
,
我认为你不能那样做。生成的数据绑定代码会自动检查空值,并避免空指针异常
https://developer.android.com/topic/libraries/data-binding/expressions#null_coalescing_operator