如何解决Android 双向数据绑定找不到接受参数类型 '' 的 <> 的 getter
我正在基于 Udemy 课程构建我的第一个 Android 应用程序。这是一个健身房跟踪应用程序。我正在尝试添加用户可以在回收站视图中编辑条目的功能。我正在使用数据绑定,因此我假设数据将自动更新。我发现有双向数据绑定。
当我添加“=”符号以指示双向数据绑定时,我收到错误“无法找到接受参数类型的 的 getter”
这是我的 editText 布局: '''
android:id="@+id/reps_field"
android:layout_width="125dp"
android:layout_height="wrap_content"
android:gravity="center"
android:text=" 50 "
android:inputType="number"
tools:layout_editor_absoluteX="107dp"
tools:layout_editor_absoluteY="629dp"
app:reps_field="@={workingset}"/>'''
这是我用来仅在 textView 中显示数据的适配器
@BindingAdapter("reps_field")
fun TextView.setReps(item: Workout?) {
item?.let {
text = item.reps.toString()
}
}
如果有帮助,这里是 Github 存储库的链接 https://github.com/anthony-ruiz/my-workout-tracker
我的目标是能够将数据中的更改保存到数据库中
解决方法
查看您的存储库,您似乎没有为 InverseBindingAdapter
设置 reps_field
,需要实现该设置以告诉数据绑定在更改时如何从自定义视图中检索值.除此之外,您还需要第三个绑定适配器,以便在值更改时通知数据绑定。
此处有此过程的文档和非常全面的示例:Two-way data binding。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。