我的情况是:我有一个禁用焦点的 EditText 字段。
除了 EditText 字段之外,我还有两个用于输入法的按钮。所以我想当单击第一个按钮时:打开软键盘并在 EditText 字段中编辑文本。我尝试了很多方法:
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(yourEditText, InputMethodManager.SHOW_IMPLICIT);
并且对我不起作用。打开软键盘的唯一方法是:
toggleSoftInput(InputMethodManager.SHOW_FORCED, 0)
但无法编辑 EditText 字段中的信息。
您可以建议我如何在单击按钮时打开键盘并编辑某些 EditText 的文本。
多谢!
Edited:
因此,EditText 默认情况下不可聚焦。当我单击“键盘”按钮时 - 应该是可聚焦的,然后显示软键盘来输入文本并出现在 EditText 中。其他插入方法是 A-B-C 按钮,无需键盘。这将类似于摩尔斯电码输入 - 触摸并按住 A-B-C 按钮:) 我将尝试在我的案例中实现建议的示例。感谢你们 :)
![my case](https://i.stack.imgur.com/oeVNc.png)
感谢大家的帮助:)我使用了你们给我的所有建议,搜索并测试了很多其他脚本,最后我的代码可以工作了:)
这是我的最终代码:
InputEditText = (EditText) findViewById(R.id.InputText);
public void InputData() {
/* Keyboard Button Action */
KeyboardButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Log.v(TAG, "On Keyboard Button click event!");
InputEditText.requestFocus();
InputEditText.setFocusableInTouchMode(true);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(InputEditText, InputMethodManager.SHOW_FORCED);
}
});
}
这可能对某人有用:)
谢谢你!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)