Android TextView TextWatcher

Android TextView TextWatcher

所以我有两个 EditText 和一个 TextView, 两个 EditText 是数字格式,我用它来比较两个大于或小于...,对于 TextView,这是我放置输出的地方。 我的问题是,当我在编辑文本中输入数字时,Textview 中没有任何变化。

下面是我的代码:

@Override
protected void onCreate(Bundle savedInstanceState)
{
    etnumb_one= findViewById(R.id.etnumb_one);
    etnumb_two= findViewById(R.id.etnumb_two);
    tvOutput= findViewById(R.id.tvOutput);

    tvOutput.addTextChangedListener(new TextWatcher() {
        @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)
        {
            tvOutput.setText(getOutput());
        }
    });
}

下面是我在 onCreate 之外的方法

 public String getOutput()
{
    int first = Integer.parseInt(etnumb_one.getText().toString());
    int second= Integer.parseInt(etnumb_two.getText().toString());

    String output;

    if(first > second)
    {
        output= Integer.toString(first) + " : " + Integer.toString(second);
    }
    else
    {
        output= Integer.toString(first) + " : " + Integer.toString(second);
    }
    return output;
}

我只想在文本视图中查看输出。谢谢!

您正在 TextView 而不是 EditText 添加 TextWatcher

而不是

tvOutput.addTextChangedListener

使用:

etnumb_one.addTextChangedListener