在 Android 中自动显示从编辑文本(由用户输入)到文本视图的整数值,无需任何操作(例如 onButtonClick)

Display automatically an Integer value from Edit Text (entered by the user) to Text View without any actions (such as onButtonClick) in Android

尝试从用户输入的Edit Text中得到一个整数(比如Total Amount)并乘以数值(比如5%)来显示,并自动使用TextView显示。

对于第 1 部分,即简单地显示从 EditText 到 TextView 的整数得到 NumberFormatException 错误。

''' temp = (Integer.parseInt(editText.getText().toString()));

textView.setText(温度);

'''

而第二部分,即自动显示从 EditText 到 TextView 的值,不知道如何处理。

只需使用 textwatcher 并将逻辑放入其中。只需确保更改 edittexttextview

的 ID
et.addTextChangedListener(new TextWatcher() {
    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) { }
    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) { }
    @Override
    public void afterTextChanged(Editable s) {
        String value = s.toString();
        double outputValue = Integer.parseInt(value) * 0.05;
        textView.setText(String.valueOf(outputValue));
    }
});

确保在 edittext 中它只捕获 numerical 值。

你可以试试这个方法

    editText.addTextChangedListener(new TextWatcher() {
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) { }
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) { }
        @Override
        public void afterTextChanged(Editable s) {
            String userInputText = s.toString();
        try {
            val userInputAsNumbger = userInputText.toInt();
        }catch (e:NumberFormatException){
            print(e.message)
        }
        }
    });
     

确保不会出错