Android EditText - 如何检测软键盘输入是否存在?

3

我想检测EditText中输入的内容是否使用软键盘输入。

我已经重写了dispatchKeyEvent,但它并没有起作用...

@Override
    public boolean dispatchKeyEvent(KeyEvent event) {
        Log.e("key pressed", String.valueOf(event.getKeyCode()));
        return super.dispatchKeyEvent(event);
    }

尝试这个 https://stackoverflow.com/questions/29769204/detect-input-from-software-or-hardware-keyboard - PCGALI ANDROID
@PCGALIANDROID 我尝试做这个,但它不起作用。 - Krzysztof Pokrywka
2个回答

0

找到解决方案

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_DEL) {
          // like this you can detect 

        }
        return super.onKeyDown(keyCode, event);
    }

-1
yourEditText.addTextChangedListener(watcher);

private TextWatcher watcher = new TextWatcher() {
    @Override
    public void onTextChanged(CharSequence s, int start, int before, 
int count) {
       if(!s.toString().isEmpty()){
        //your text is not empty
    }

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, 
int after) {

    }

    @Override
    public void afterTextChanged(Editable s) {

    }
};

好的,但这并不是我的问题的答案。 - Krzysztof Pokrywka
所以请解释您的问题,因为我可能没有正确理解它,这意味着更多的人没有理解它。 - Miky Braun

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接