代码实例 -- 在程序里检查虚拟键盘状态, 并开启关闭
16lz
2021-01-25
阅读更多 最近都在推上, 荒废了blog, 所以都没怎么写心得, 对不起大家了哈 (其实也很忙 ;)
现在准备有空就写点实践心得, 希望对大家有帮助.
今天讲的是如何在Android程序中检查虚拟键盘的状态, 如何开启关闭虚拟键盘.
用过Android手机的童鞋们都知道, Android的虚拟键盘是挺挫的~~~ 按键不精确, 反应也很2...
在Android系统服务里有个InputMethodManager是用来控制输入法的:
用:
来检查虚拟键盘是不是在开启的状态
然后可以用toggle方法来关闭它
当然如果当前虚拟键盘是关闭的, toggle就会开启键盘.
InputMethodManager也有独立开启和关闭的方法:
但我在实践中从window获取那个token偶尔会出Exception, 所以现在都在用toggle这个方法将就着 ;)
现在准备有空就写点实践心得, 希望对大家有帮助.
今天讲的是如何在Android程序中检查虚拟键盘的状态, 如何开启关闭虚拟键盘.
用过Android手机的童鞋们都知道, Android的虚拟键盘是挺挫的~~~ 按键不精确, 反应也很2...
在Android系统服务里有个InputMethodManager是用来控制输入法的:
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
用:
if (imm.isActive())
来检查虚拟键盘是不是在开启的状态
然后可以用toggle方法来关闭它
imm.toggleSoftInput(InputMethodManager.SHOW_IMPLICIT, InputMethodManager.HIDE_NOT_ALWAYS);
当然如果当前虚拟键盘是关闭的, toggle就会开启键盘.
InputMethodManager也有独立开启和关闭的方法:
imm.showSoftInput(view, flags);imm.showSoftInputFromInputMethod(token, flags);imm.hideSoftInputFromInputMethod(token, flags);
但我在实践中从window获取那个token偶尔会出Exception, 所以现在都在用toggle这个方法将就着 ;)
更多相关文章
- Android(安卓)4.0-Launcher-FolderEdit-onKeyPreIme
- Android开发心得——网页通过webview调用Android的图片或文件选
- Android(安卓)将App的内容延伸到状态栏/导航栏
- 二、Android(安卓)数据链接的动态分析
- Android(安卓)WifiManager.WifiLock 简介
- Unity3d和Android的互相调用(二)
- 一个简单好用的Android(安卓)Tab 设计与实现
- android实现软键盘弹出,editText随键盘上移,背景不动
- Android面试之Activity生命周期