启用 - 通过编程方式在EditText上禁用addTextChangedListener

时间:2014-01-08 10:41:51

标签: android android-edittext textwatcher

如何在 EditText 上禁用addTextChangedListener

场景: -

我有四个 EditText ,用于输入完成算术运算的值。

手中的 - 扣除金额 =

In Hand 扣减金额Editable且已应用addTextChangedListener

金额:不可编辑

In Hand 扣除金额会相互影响。

影响:

如果 In Hand  更改:: 扣除金额

问题区域:

如果扣除金额根据手中

更改::

但是我已经在上应用了addTextChangedListener,这给了psuedo复合动作。

1 个答案:

答案 0 :(得分:1)

这样的事情怎么样:

    ...
    boolean changeDeductedAmount = true;
    ...
    //in InHand textChangeListener
    changeDeductedAmount = false;
    editTextDeductedAmount.setText(value);

    //in DeductedAmount textChangeListener
    if (changeDeductedAmount){
       //your code here if user edited text
    } else {
       //edit text was edited by your code, reset flag
       changeDeductedAmount = true;
    }

然后对每一对可以更改DeductedAmount

的编辑文本执行此操作