没有任何其他键盘的Android屏幕键盘

时间:2012-06-07 19:14:34

标签: android keyboard ime

我看过几个问题并发现了几个帖子,但我无法弄清楚如何做到这一点。

下图显示了基本布局: enter image description here

我创建了一个custom numpad并将其放在回购邮件上。

目前,当应用程序打开时,编辑文本具有焦点,但我用键盘输入的任何内容都将进入edittext框。这部分功能正常。

问题:当我再次触摸edittext时,弹出系统输入法及其巨大的键盘。如何完全阻止它弹出?或者,我可以告诉应用程序只使用我的键盘而不是系统键盘吗? (或者是编写自定义ime的唯一方法吗?)

我不能在清单中使用NULL类型输入,因为这样做会使编辑文本中的插入符号消失,而且如果有两个编辑文本,我不知道哪个有焦点。

任何帮助都将受到高度赞赏!

1 个答案:

答案 0 :(得分:1)

你可以做一些事情:

  1. 以编程方式将其隐藏在整个应用中:

    getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
    
  2. 将其附加到视图中隐藏:

    InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);
    
  3. 将EditText的输入类型设置为0:

    EditText yourEditText=(EditText)findViewById(R.id.editTextConvertValue);
    yourEditText.setInputType(0);