android中软键盘的交互

android 中碰到软键盘的问题,不知道的还真是意识不好解决啊
今天看到一篇写的不错的问题,提到了几个点,软键盘和 activity 的交互,软键盘用代码显示,收起,设置软键盘右下角显示什么键位,软键盘添加监听
彻底搞定Android开发中软键盘的常见问题

滚动时关闭软键盘

        private void hintKbTwo() {
            InputMethodManager imm =(InputMethodManager) getSystemService (Context.INPUT_METHOD_SERVICE);
            if (imm.isActive() && getCurrentFocus() != null) {
                if (getCurrentFocus().getWindowToken() != null) {
                    imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
                }
            }
        }

        mRecyclerView.addOnScrollListener(new RecyclerView . OnScrollListener () {
            @Override
            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                super.onScrollStateChanged(recyclerView, newState);
                if (newState != SCROLL_STATE_IDLE) {
                    hintKbTwo();
                }
            }
        }

自定义键盘

我们可以通过反射关闭系统默认键盘的弹出,然后把自己自定义的键盘样式设置给 Edittext,这样就能显示自定义键盘了

  • Android自定义View之数字键盘 (NumberKeyboardView)

你可能感兴趣的:(android中软键盘的交互)