我正在尝试在 onFocusChange 函数中使用监听器绑定(bind)传递 View ,但出现以下错误
请有人帮我找到正确的方法来实现这一点。
<variable
name="user"
type="com.webage.www.vco_address.User" />
<variable
name="obj"
type="com.webage.www.colin.Validations" />
</data>
<EditText
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="82dp"
android:text="@={user.name}"
android:onFocusChange="@{(view)->obj.saveClick(view, user.name)}" />
验证
public class Validations {
public void saveClick(View view, String name){
Log.v("saveClick",name);
}
}
最佳答案
我相信错误消息的措辞不正确。 onFocusChange()
有两种方法没有任何意义,因为 是 一个方法。更可能的问题是 onFocusChange()
有两个 参数 ,一个 View
和一个 boolean
。您已声明 lambda 只接受一个参数。只需向 lambda 添加第二个参数即可。
关于android - 在数据绑定(bind) Android 中通过 OnFocusChange 中的 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39355945/