EditText失去了对TextChange的关注

时间:2017-01-31 10:39:06

标签: android kotlin

我正在开发使用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>,其中Property是一个自定义对象,提供有关格式类型(字符串,日期,数字等)和{的信息。 {1}}来电已签名getPropertyValue

出于某种原因,每次我键入文本字段时都看不到任何更改但会失去焦点。肯定会调用getPropertyValue(item: Pair<String, Property>): String侦听器,因为在执行时我可以看到onTextChanged生成的更新值已登录到控制台。

我已经尝试过here概述的解决方案无济于事。有没有人有任何其他建议?现在已经坚持了一段时间。

1 个答案:

答案 0 :(得分:0)

这似乎是Anvil中的一个错误,因为使用Android的onTextChanged实现正常运行。关闭这个并且我将在他们的回购中提交一个错误。