我有以下具有数据绑定的XML:
<EditText
android:id="@+id/addvalue"
android:inputType="numberDecimal"
android:digits="0123456789,€"
android:text="0,00 €"/>
<Button
android:id="@+id/add"
android:onClick="@{() -> fragment.addManualPosition(addvalue.text)}"/>
我得到了错误
"data binding error ****msg:if getId is called on an expression, it should have an id: addvalue.text"
我什么都找不到,可以帮助我理解该错误的含义或解决方法。
答案 0 :(得分:1)
我自己找到的。 但是,由于绝对没有关于此错误消息的记录,而且它极具误导性,因此我将在线保持该问题。
修复: Lambda是完美的 Kotlin lambda。 但是,数据绑定似乎会生成 Java 代码。 因此,它不能是addvalue.text,而是addvalue.getText()。