我目前正在开发一个计算器应用程序,在那里我做了一个自定义键盘,并想隐藏虚拟键盘。我已经找到了可以隐藏它的解决方案,但光标也被隐藏了。我想要的功能与com.android相同。我已经看了源代码,但我仍然不能让它工作。
我想你搞错了。有一个更简单的解决方案(也是一个更明显的解决方案)。
- 使EditText不可编辑。
- 在代码中绑定EditText (findViewById)
- 在按钮中,获取文本并添加到当前字符串中,然后显示它。
。
说你按了'1'键。
在你的one.setOnclickListener()
中,这样做:
String S=EditText.getText()+"1";
EditText.setText(s);
编辑:如果您只是想在保持光标的同时隐藏键盘,请尝试以下代码:
EditText editText = (EditText)findViewById(R.id.edit_text);
editText.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
v.onTouchEvent(event);
InputMethodManager imm = (InputMethodManager)v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm != null) {
imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
}
return true;
}
});