隐藏虚拟键盘但具有功能齐全的游标

时间:2014-07-08 14:05:48

标签: android virtual-keyboard android-virtual-keyboard

我正在开发一个计算器应用程序,我已经制作了一个自定义键盘,并希望隐藏虚拟键盘。我找到了可以隐藏它的解决方案,但光标也被隐藏了。我想要的功能与com.android.calculator2应用程序相同。我查看了它的源代码,但我仍然无法使其工作。

1 个答案:

答案 0 :(得分:1)

我认为你弄错了。有一个更容易的解决方案(更明显的解决方案)。

  1. 使EditText无法使用。
  2. 绑定到代码中的EditText(findViewById)
  3. 在按钮中,获取文本并添加到当前字符串,然后显示它。
  4. EG。

    说你按下了' 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;
        }
    });