+-

在 Yigit Boyar and George Mount’s talk on Android Databinding中,他们说明了绑定到TextWatcher的onTextChanged是多么容易(在13:41).在按钮上.他们的幻灯片错了吗?首先,Button View没有onTextChanged属性.它既没有setOnTextChanged方法. EditText也不是.但它们都有addTextChangedListener,它将TextWatcher作为输入.
那他们在说什么呢?他们是如何做到的呢?他们的示例代码无法编译,但会出现此错误:
Error:(17) No resource identifier found for attribute 'onTextChanged' in package 'android'
如何使用Android Databinding框架绑定到任何View或特别是EditText上的“Text Changed Event”?
最佳答案
实际上它开箱即用.我认为我的错误是使用旧版本的数据绑定框架.使用最新的,这是程序:
视图:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/username"
android:text="Enter username:"
android:onTextChanged="@{data.onTextChanged}" />
模型:
public void onTextChanged(CharSequence s, int start, int before, int count) {
Log.w("tag", "onTextChanged " + s);
}
确保您正在引用gradle构建工具v1.5.0或更高版本,并在build.gradle中启用了与android.dataBinding.enabled相同的数据绑定.
编辑:功能演示项目here. view. model.
点击查看更多相关文章
转载注明原文:如何在Android上为EditText数据绑定到onTextChanged? - 乐贴网