【问题标题】:edittext addtextchange listener reapeting textedittext addtextchange 监听器重复文本
【发布时间】:2016-09-17 07:04:34
【问题描述】:

我见过很多例子,但没有一个适合我。我想要的是通过 EditText 的 addTextChangeListener() 将文本设置为 TextView。但是我在edittext中输入的每个字符都会重复我的textview文本。

这是我的代码:

edtFromName.addTextChangedListener(new TextWatcher() {
            private String lastValue = "";
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {}
            @Override
            public void afterTextChanged(Editable s) {
                setMessage();
            }
        });

// setMessage code:
  private void setMessage() {

        if (refVia.getSelectedItemPosition() < 3) {
            if (txtCompany.equals("")) {
                txtText.append(" or ");
            } else {
                txtText.append(" " + txtCompany + " or ");
            }
        } else {
            if (txtSupplier.equals("")) {
                txtText.append(" or ");
            } else {
                txtText.append(" " + txtSupplier + " or ");
            }
        }

        txtText.append(edtFromName.getText().toString() + ".");
    }

输出:

Edittext:  sagar

textview: s
textview: sa
textview: sag
textview: saga
textview: sagar

【问题讨论】:

  • 在某种意义上重复。你的输入是什么,输出是什么?
  • 检查我的更新

标签: android android-textwatcher addtextchangedlistener


【解决方案1】:

好的,追加。

int mainStringLength = txtText.getText().toString().length();
int nameStringLength = edtFromName.getText().toString().length();
String trimString = txtText.getText().toString().substring(0,(mainStringLength - nameStringLength); 

//Now set this string.
txtText.setText(trimString);

【讨论】:

  • 对不起..但这不是我的解决方案..我不仅设置了edittext值..我还有其他自动完成文本。这就是我使用追加的原因。
  • 谢谢你 shabbir.. 它的工作.. 但其他文本有一些问题,但我会处理它.. 毕竟你给了我一个糟糕的想法..
  • 很好,该解决方案可以帮助您。也考虑投票:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-02
  • 2011-08-16
  • 2021-08-09
  • 1970-01-01
相关资源
最近更新 更多