Android:为什么即使对象为null,数据绑定也不强制NullPointerException

Android:为什么即使对象为null,数据绑定也不强制NullPointerException,android,android-layout,data-binding,Android,Android Layout,Data Binding,我不知道为什么即使对象为null,数据绑定也不允许崩溃,有时避免null指针异常是不好的,因为用户可能会看到空数据或看到空TextFild而感到困惑 例如: android:text="@{user.lastName}" 如果上面的用户对象为空,那么我们将看到空的textView,用户可以认为他们在数据库/网络服务器中没有姓氏 如果对象为null,是否有任何参数可以强制NullPointerException 您可以在变量的getter方法中检查变量的nullPointerException

我不知道为什么即使对象为null,数据绑定也不允许崩溃,有时避免null指针异常是不好的,因为用户可能会看到空数据或看到空TextFild而感到困惑

例如:

android:text="@{user.lastName}"
如果上面的用户对象为空,那么我们将看到空的textView,用户可以认为他们在数据库/网络服务器中没有姓氏


如果对象为null,是否有任何参数可以强制NullPointerException

您可以在变量的getter方法中检查变量的nullPointerException 甚至在数据绑定中设置空条件像下面这样设置文本

android:text="@{user.lastName != null ? user.lastName : "unknown text" }"

如果将元素的文本直接设置为
null
,会发生什么情况?数据绑定的最大优点之一是避免了空指针问题。可能是因为框架只是创建了视图,没有询问数据,然后尝试获取数据,没有抛出空指针。如果用户对象为空,该怎么办?@jitsm555在设置该对象的属性时,检查用户变量的nullPointerException,因为当您更改用户属性的值,然后在layout Called中进行数据绑定时,我不确定我们如何才能做到这一点,因为该响应直接转到您的布局。更改后,您的响应转到布局,或者将值设置为该值,以便您可以在设置或更改用户属性的值之前检查空条件