android自动弹出软键盘(输入键盘)
2015-06-02 10:59
204 查看
很多应用中对于一个界面比如进入搜索界面或者修改信息等等情况,为了用户体验应该自动弹出软键盘而不是让用户主动点击输入框才弹出(因为用户进入该界面必然是为了更改信息)。具体实现这种效果如下:
EditText editText.setFocusable(true);
editText.setFocusableInTouchMode(true);
editText.requestFocus();
InputMethodManager inputManager =
(InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
首先要对指定的输入框请求焦点。然后调用输入管理器弹出软键盘。
警告:对于刚跳到一个新的界面就要弹出软键盘的情况上述代码可能由于界面为加载完全而无法弹出软键盘。此时应该适当的延迟弹出软键盘如998毫秒(保证界面的数据加载完成)。实例代码如下:
Timer timer = new Timer();
timer.schedule(new TimerTask()
{
public void run()
{
InputMethodManager inputManager =
(InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
}
},
998);
EditText editText.setFocusable(true);
editText.setFocusableInTouchMode(true);
editText.requestFocus();
InputMethodManager inputManager =
(InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
首先要对指定的输入框请求焦点。然后调用输入管理器弹出软键盘。
警告:对于刚跳到一个新的界面就要弹出软键盘的情况上述代码可能由于界面为加载完全而无法弹出软键盘。此时应该适当的延迟弹出软键盘如998毫秒(保证界面的数据加载完成)。实例代码如下:
Timer timer = new Timer();
timer.schedule(new TimerTask()
{
public void run()
{
InputMethodManager inputManager =
(InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
}
},
998);
相关文章推荐
- Android: ListView排序及过滤
- 如何从Android工程导出apk安装包
- Android Studio SVN插件消失问题
- Android中的Thread与AsyncTask的区别?
- Android中解析XML
- android开发中常用的快捷键
- Android手机分辨率基础知识(DPI,DIP计算)
- Android开发之ADB命令
- Android源代码下载方法具体解释
- Android Framework框架
- Android 图片的三级缓存 及 图片压缩
- Android 关于屏幕适配
- Android Fragment 真正的完全解析(上)
- 从代码分析Android-Universal-Image-Loader的图片加载、显示流程
- Android之批量加载图片OOM问题解决方案
- Android开发技巧——实现可复用的ActionSheet菜单
- Android开发技巧——实现可复用的ActionSheet菜单
- Android ViewPager使用详解(转)
- Android 自动化测试—robotium(九) Junit_report测试报告重定向输出到终端SDCard
- 一---Android-SDK系列文章(5) ---android之系统属性的(获取&&设置)