[转]android自动弹出软键盘(输入键盘)

转自:http://www.devdiv.com/home.php?mod=space&uid=65729&do=blog&id=11847

很多应用中对于一个界面比如进入搜索界面或者修改信息等等情况,为了用户体验应该自动弹出软键盘而不是让用户主动点击输入框才弹出(因为用户进入该界面必然是为了更改信息)。具体实现这种效果如下:

[代码]java代码:

1      EditText  editText.setFocusable(true);
2         editText.setFocusableInTouchMode(true);
3         editText.requestFocus();
4 InputMethodManager inputManager =
5                     (InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
6                 inputManager.showSoftInput(editText, 0);

 

 

首先要对指定的输入框请求焦点。然后调用输入管理器弹出软键盘。

警告:对于刚跳到一个新的界面就要弹出软键盘的情况上述代码可能由于界面为加载完全而无法弹出软键盘。此时应该适当的延迟弹出软键盘如998毫秒(保证界面的数据加载完成)。实例代码如下:

[代码]java代码:

 1 Timer timer = new Timer();
 2      timer.schedule(new TimerTask()
 3      {
 4          
 5          public void run()
 6          {
 7              InputMethodManager inputManager =
 8                  (InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
 9              inputManager.showSoftInput(editText, 0);
10          }
11          
12      },
13          998);

 

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。