https://github.com/ThirdPrince/DataBindingSample
不是EditText的方法吗
这个不影响的。是说你的安卓studio插件更新失败
现在可以直接使用Compose了,DadaBinding用不上了。
这个看下视频基本就会写了。。。还要源码干什么
实现的实体类
有时候不自动生成可能是你布局文件中有问题,有时候确实不会自动生成,需要你手动make一下project
额,其实我是想问如何实现:
<EditText
android:onTextChanged="@{() -> person.onTextChanged(这里面不知道怎么实现)}"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
employee property instance box
嗯,继续努力。
不会呀,你的xml文件比如是activity_main,那么就是ActivityMainBinding,如果是activity_item,那么就是ActivityItemBinding呀,一次类推,你的没有的话,肯定是哪里错误了,我开始也和你相同的问题
这个方法名必须和它本身提供的方法名一模一样,会不会你写错了
可以加
它是自动生成的,当你在xml中外层加入<layout></layout>时,gradle帮助自动生成,老师在视频讲到过。把工程切换到project类型,ActivityDemoBinding在/app/build/intermediates/classes/debug/com/github/markzhai/databindingsample/databinding下。ActivityDemoBinding这个类名是根据main类的名称生成的
Binding类名称自动生成的是ViewDataBinding,所以需要自己来写这个类名称
包名小写
public ObservableBoolean isFired = new ObservableBoolean(); 不然会空指针
好像暂时只有多写个方法把。毕竟没有了id。
你可也把写的代码或者是报错信息,贴上来,才知道什么错
所以到底是User还是user呢? 建议贴全代码
用Observale就是可以达到类似前端Vue.js的双向绑定的效果,数据变化界面自动刷新,而不用手动去刷新
应该是Gradle同步一下,gradle更改后上面有一个同步按钮(Sync Now),点击一下就有了
ActivityDemoBinding是根据你的布局文件activity_demo来的,比如布局文件是activity_main
, 那么类名是ActivityMainBinding
环境变量没有配置。JAVA_TOOL_OPTIONS;-Dfile.encoding=UTF-8。然后重启电脑。