android虚拟键盘InputMethodManager使用
来源:互联网 发布:王心凌怎么消失了知乎 编辑:程序博客网 时间:2024/05/21 22:47
在Activity中进行调整:
AndroidManifet.xml中属性设置:windowSoftInputMode,可以让程序控制活动主窗口调整的方式
"stateUnspecified": 软键盘的状态(隐藏或可见)没有被指定。系统将选择一个合适的状态或依赖于主题的设置。这个是软件盘行为的默认设置。
"stateUnchanged":软键盘被保持上次的状态。
"stateHidden":当用户选择该Activity时,软键盘被隐藏。
"stateAlwaysHidden": 软键盘总是被隐藏的。
"stateVisible": 软键盘是可见的。
"stateAlwaysVisible": 当用户选择这个Activity时,软键盘是可见的。
"adjustUnspecified": 它不被指定是否该Activity主窗口调整大小以便留出软键盘的空间,或是否窗口上的内容得到屏幕上当前 的焦点是可见的。系统将自动选择这些模式中一种主要依赖于是否窗口的内容有任何布局视图能够滚动他们的内容。如果有这样的一个视图,这个窗口将调整大小,这样的假设可以使滚动窗口的内容在一个较小的区域中可见的。这个是主窗口默认的行为设置。也就是说,系统自动决定是采用平移模式还是压缩模式,决定因素在于内容是否可以滚动。
"adjustResize":(压缩模式) 当软键盘弹出时,要对主窗口调整屏幕的大小以便留出软键盘的空间。
"adjustPan":(平移模式:当输入框不会被遮挡时,该模式没有对布局进行调整,然而当输入框将要被遮挡时,窗口就会进行平移。也就是说,该模式始终是保持输入框为可见。)该Activity主窗口并不调整屏幕的大小以便留出软键盘的空间。相反,当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分。这个通常是不期望比调整大小,因为用户可能关闭软键盘以便获得与被覆盖内容的交互操作。
代码:
1.打开虚拟键盘
InputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
2.关闭虚拟键盘
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.hideSoftInputFromWindow(OpeListActivity.this.getCurrentFocus().getWindowToken(),InputMethod Manager.HIDE_NOT_ALWAYS);
3.判断输入法打开 or 关闭
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
boolean isOpen=imm.isActive();
在XML里面设置的属性是:android:windowSoftInputMode
来自为知笔记(Wiz)
0 0
- android虚拟键盘InputMethodManager使用
- android 键盘 InputMethodManager
- 使用eclipse创建android虚拟机时不能使用虚拟键盘
- Android异常 隐藏输入法键盘时InputMethodManager.hideSoftInputFromInputMethod
- 使用InputMethodManager 退出键盘最灵活的方式
- InputMethodManager键盘控制
- Android物理键盘与虚拟键盘同时使用
- android 中 虚拟键盘
- Android收起虚拟键盘
- Android收起虚拟键盘
- android 关闭虚拟键盘
- android虚拟键盘实现
- Android收起虚拟键盘
- android 获取虚拟键盘
- Android:隐藏虚拟键盘
- InputMethodManager的用法,键盘,隐藏
- InputMethodManager的用法,键盘,隐藏
- InputMethodManager的用法,键盘,隐藏
- 手机卫士-09
- Canvas、Paint、Path
- 65. PHP 自动加载类
- Java实现生产者与消费者(三)(多生产者多消费者)
- 事件分发机制
- android虚拟键盘InputMethodManager使用
- Fragment错误:IllegalStateException: Can not perform this action after onSaveInstanceState
- Android运行时识别API版本
- MD5校验码的生成与算法实现
- 双击退出程序
- PHP $_FILES错误说明error 0,1,2,3,4,5,6,7
- vlan协议详解
- iOS 面试题整理(题加答案)
- ROS 学习系列 -- 使用Rviz观察智能车的运动轨迹 无陀螺仪计算角度转动