如何触发软键盘?
如何触发软件键盘并将侦听器添加到其键中?
要显示软键盘,您可以尝试: InputMethodManager.showSoftInput()
至于添加侦听器,您可以做的最好的事情是将TextChangedListener
添加到EditText
以侦听EditText
视图中通过键盘进行的更改。
我尝试了两个选项,但没有一个在模拟器中工作,正如我所说,我试图在长按菜单上弹出软键盘:
@Override public boolean onKeyLongPress(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_MENU) { showSoftInput.getInputMethodList(); showSoftInput.toggleSoftInput(showSoftInput.SHOW_FORCED, 0); return true; } return super.onKeyLongPress(keyCode, event); }
第二种选择:
View.OnLongClickListener mLongClickListener = new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { Configuration config = RouteMapActivity.this.getResources() .getConfiguration(); if (config.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES) { InputMethodManager imm = (InputMethodManager) RouteMapActivity.this .getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(mapView, InputMethodManager.SHOW_IMPLICIT); // .SHOW_FORCED); } return false; } };
您可以通过添加来从您的AndroidManifest.xml执行此操作
...
但请注意:如果用户的设备连接了硬件键盘,则不会出现软输入法。 http://developer.android.com/training/keyboard-input/visibility.html