【问题标题】:How do I change the value in ListView when EditText is changed更改 EditText 时如何更改 ListView 中的值
【发布时间】:2013-06-22 00:42:20
【问题描述】:

所有,

我有一个 ListView,其中有一个 EditText 用于数量,TextView 用于价格,小计用于数量 * 价格。最初数量设置为 1,其他所有设置为价格。

现在,当用户尝试更改数量时,我想计算小计并将其值设置在适当的字段中。但是 afterTextChange() 回调不使用 EditText,而是使用一些 Editable 对象。这意味着无法访问底层视图,也无法更新 TextView。

那么我该如何实现呢?我什至无法在列表中获得我编辑数量的行,因为我无权访问底层的 EditText 对象。

谢谢。

P.S.:显然这个值是可丢弃的,也就是说计算后它不会被存储在任何地方。只有数量很重要,它会保存在数据库中。

【问题讨论】:

    标签: android listview android-edittext


    【解决方案1】:

    查看 notifyDataSetChanged。在 onTextChanged 的​​正文中使用此方法。

    【讨论】:

      【解决方案2】:

      一些相关代码将有助于准确了解您的设置方式,但如果您的 TextWatcher(我假设您正在使用)是一个内部类,而您的 TextView 是一个成员变量,那么您确实有访问它。

      所以你可以做类似的事情

      @Override
          public void afterTextChanged(Editable s) {
              txtView1.setText(s.toString());  // assuming txtView1 is the TextView you want to change
          }
      

      如果这没有帮助,请发布一些相关代码,以便我们查看您拥有的内容

      【讨论】:

      • 没有看到你的代码很难说,但它会更新TextView
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多