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

标签 android android-edittext textwatcher

如何在 EditText 上禁用 addTextChangedListener

场景:-

我有四个 EditText 用于输入进行算术运算的值。

在手% - 扣除金额 = 金额

在手 % Deducted AmountEditable 并且应用了 addTextChangedListener

金额:不可编辑

在手 % Deducted Amount相互影响。

影响:

如果在手 % 更改::扣除金额

问题区域:

如果 Deducted Amount 发生变化:% 根据 In Hand

但因为我已经在 % 上应用了 addTextChangedListener,它提供了伪复合 Action 。

最佳答案

这样的事情怎么样:

    ...
    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 的编辑文本执行此操作

关于android - 启用 - 通过编程方式禁用 EditText 上的 addTextChangedListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20993241/

相关文章:

java - Facebook : posting same status to user wall getting error

android.widget.Button 无法转换为 android.widget.EditText

android - 自定义 EditText - Material 设计

java - Android - 返回时 ListView 为空

android - 根据两个或多个 EditText 字段中的输入启用/禁用按钮的优雅方式

java - 使用默认方法会在 Android 发布版本中引发 AbstractMethorError

java - 恢复键添加新行而不是发送消息

java - Android,如何从 Google Drive 文件选择器获取 "fileID"

android - setTextIsSelectable 如何防止键盘出现?

java - android 打开消息从 ListView 到编辑文本