使用数据绑定处理onClick



我正在使用数据绑定、处理点击事件

有时我会使用方法A,而且效果很好。

android:onClick="@{myActivity.onIvEditClick()}"

有时A不起作用,所以我不得不使用方法B的方式

android:onClick="@{() -> myActivity.onIvEditClick()}"

什么时候用A路还是B路?

  1. 方法引用:方法可以直接引用到与任何组件关联的事件,例如onClick((。在这里,该方法将具有与事件类似的定义。例如,如果您试图用任何方法绑定点击事件,比如onHandleClick((,您必须这样定义它,

    android:onClick="@{handlers::onHandleClick}"

  2. 侦听器绑定:现在,如果我想在组件上的特定事件上绑定任何方法,该怎么办?我的方法可以有任何类型的定义,这些定义可能与事件方法不匹配,甚至我想通过方法传递数据。让我们看看如何实现这一点。

    android:onClick="@{() -> presenter.onSaveProfile(user)}"

您可以在这里找到更多

最新更新