我遇到了一个问题,如果用户输入并点击submit,键盘不会消失,所以我找到了这段代码来解决这个问题(通过将其放在onclick方法中):

        InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);

但是,如果用户手动关闭键盘,然后单击Submit,我发现上面的代码会把键盘带回来——不好。
问题是:
有更好的代码可以使用吗?或者我可以说=
 if (keyboard = displayed) {
            // do code above
          } else {
            // do nothing
          }

最佳答案

要隐藏键盘:

final InputMethodManager inputMethodManager =
            (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);

inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0);

展示:
final InputMethodManager inputMethodManager =
            (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);

inputMethodManager.showSoftInput(view, InputMethodManager.SHOW_FORCED);

关于android - 在onClick期间控制软键盘-Android,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11838228/

10-11 12:44