
我已经在Android模拟器中启用了“硬件键盘”(我的PC键盘).对于EditText,我将ImeAction设置为IME_ACTION_DONE.
当我在模拟器或任何AndroID设备的键盘上使用虚拟键盘时,此设置工作正常.但是当启用了“硬件键盘”时,当我按下PC键盘上的Enter键时,就不会出现这种情况.
我们需要按“输入”键以外的其他键来在模拟器上执行IME_ACTION_DONE吗?
解决方法:
在PC键盘中输入Enter并不代表androID软键盘中的Done按键,它还有一个单独的KeyEvent可以处理,因此要像Done一样处理它,您必须结合Done按钮的事件来处理它的事件:
mVIEw.setonEditorActionListener(new OnEditorActionListener() { @OverrIDe public boolean onEditorAction(TextVIEw v, int actionID, KeyEvent event) { if (actionID == EditorInfo.IME_ACTION_DONE || (event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER))) { //Todo do whatever you want } return false; } });看一下Enter KeyEvent here.
更新:
根据Android Emulator Keyboard Mapping,AndroID软键盘中没有代表Done键的键:
总结以上是内存溢出为你收集整理的Android模拟器不带PC键盘的Enter按钮全部内容,希望文章能够帮你解决Android模拟器不带PC键盘的Enter按钮所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)