我有一个具有read
属性的自定义视图,该属性在xml中定义如下:
<attr name="read" format="boolean" />
我在自定义视图的init
方法中获得了此属性:
read = getBoolean(R.styleable.CustomCardView_read, true)
这将设置视图的以下属性:
var read: Boolean = false
set(value) {
field = value
card_read_stripe.visibility = if (value) View.GONE else View.VISIBLE
}
使用此自定义视图时,我像这样绑定read
属性:
app:read="@{!object.fresh}"
我的问题是,我总是从样式化属性中获得true
,但从数据绑定方面却没有任何值。 read
的setter仅使用attrs.xml属性的默认值调用一次。自定义视图还具有一些通过数据绑定绑定的字符串属性,并且这些字符串属性以完全相同的方式实现,并且可以正常工作。这可能是什么原因?
答案 0 :(得分:0)
错误似乎是数据绑定编译器未以某种方式生成新代码。清理并重建了整个项目后,它又开始工作。