Detect input from software or hardware keyboard

前端 未结 2 465
逝去的感伤
逝去的感伤 2021-01-07 11:50

I\'m working in an Android app that must use a RFID tag reader. I\'m using this reader as an extra device connected in my microUSB with an OTG wire. Android is detecting thi

相关标签:
2条回答
  • 2021-01-07 12:02
    yourEditText.setOnKeyListener(new View.OnKeyListener() {
            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                return false;
            }
        });
    

    This will detect if your editText is being editted with a hardware keyboard.

    As stated here this is only useful for hardware keyboard, so in your case if this interface is not called, that means the editText input should come from the software keyboard.

    0 讨论(0)
  • 2021-01-07 12:06

    In kotlin, I am using KeyEvent to determine whether input is from external RFID tag reader. When I don't want to allow inserting values to edit_text from RFID reader I am using this:

    edit_text.setOnKeyListener { _, _, event -> !event.device.isVirtual }
    

    also see docs and try to use it in relation to your problem

    0 讨论(0)
提交回复
热议问题