EditText失去了重点TextTextChange
我正在使用Anvil和Kotlin构建的Android应用程序,目前我已经有一个RecyclerView呈现应该由用户编辑的键值对的列表。 为了保存这些编辑,我添加了一个onTextChanged
监听器,如下所示:
textInputLayout { size(MATCH, WRAP) /* ommitted style attributes */ editText { size(MATCH, WRAP) /* ommitted style attributes */ init { text(getPropertyValue(item)) onTextChanged { onPropertyChange(item.first, it.toString()) } } } }
在上面的例子中, item
是Pair<String, Property>
类型Pair<String, Property>
其中Property
是一个自定义对象,提供有关格式类型(字符串,日期,数字等)的信息, getPropertyValue
调用具有签名getPropertyValue(item: Pair<String, Property>): String
。
出于某种原因,每次我输入文本字段看到没有变化,但失去了重点。 onTextChanged
监听器肯定是被调用的,因为当它执行时,我可以看到由onPropertyChange
生成的更新值被记录到控制台。
我已经尝试了这里列出的解决方案,但没有效果。 有没有人有任何其他的建议? 一直卡在这一段时间了。
看来这是Anvil中的一个错误,因为使用Android的onTextChanged
实现可以正常工作。 关闭这个,我会在他们的回购中提出一个错误。