Android - 在输入的文本到达EditText View之前修改它

时间:2018-04-12 03:55:12

标签: android android-edittext android-input-method

问题陈述:

我们要求破解用户输入(在它到达EditText之前)并在文本到达EditText视图之前触发一些功能

怎么办呢?

尝试解决方案:

一个。在视图和布局中尝试了onKeyPreIme()方法 - 不起作用

湾我假设在文本到达视图后将调用EditText上的侦听器。因此不支持我的解决方案。

℃。在视图和布局中尝试了dispatchKeyEventPreIme()方法 - 不起作用。

我可以使用BaseInputConnection或其他类吗?如果是这样,怎么样? 从本质上讲,这个解决方案的优秀方法是什么?

1 个答案:

答案 0 :(得分:1)

使用TextWatcher

your_edit_text.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {

        }

        @Override
        public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {

        }

        @Override
        public void afterTextChanged(Editable editable) {
            if (editable.toString().equals("anything_you_want")) {
                your_edit_text.setText("");
                // do something...
            }
        }
    });