无法将addTextChangedListener与TextWatcher连接

时间:2018-03-27 19:30:56

标签: java textwatcher addtextchangedlistener

我是论坛和Java的新手。

在我的EditText上输入数字时尝试更新TextView时,我被困了。我希望这个类MyTextWatcher与convertMoney()连接;并在那里进行计算(我稍后会添加更多内容)

private class MyTextWatcher implements TextWatcher {
    public void onTextChanged(CharSequence s, int start, int before, int count) {
        convertMoney();
    }
    public void afterTextChanged(Editable s) {}
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
}

EditText text;

private void convertMoney() {

    text = (EditText) findViewById(R.id.amount);
    text.addTextChangedListener(new MyTextWatcher());

    double value = Double.parseDouble(text.getText().toString)

    double totalSave =  * 17;
    TextView totalSaveText = (TextView)findViewById(R.id.textView1);

    totalSaveText.setText("" + totalSave);
}

非常感谢

1 个答案:

答案 0 :(得分:1)

行:

text = (EditText) findViewById(R.id.amount);
text.addTextChangedListener(new MyTextWatcher());

应该可能在其他地方。您将TextWatcher添加到TextWatcher调用的方法中,因此它从未被调用过。把它放到onCreate()或其他适当的地方。