android输入法详解
来源:互联网 发布:js clearinterval用法 编辑:程序博客网 时间:2024/06/05 04:34
当我们弹出一个Dialog时候,如果这个Dialog需要输入数据,然后确定后又需要关闭输入法,一般系统的hide,跟show方法总会有各种问题,最霸道的解决方法就是写一个定时器,定时弹出或者关闭输入法。
import java.util.Timer;import java.util.TimerTask;import android.content.Context;import android.view.View;import android.view.inputmethod.InputMethodManager;import android.widget.EditText;public class InputTools { //隐藏虚拟键盘 public static void HideKeyboard(View v) { InputMethodManager imm = ( InputMethodManager ) v.getContext( ).getSystemService( Context.INPUT_METHOD_SERVICE ); if ( imm.isActive( ) ) { imm.hideSoftInputFromWindow( v.getApplicationWindowToken( ) , 0 ); } } //显示虚拟键盘 public static void ShowKeyboard(View v) { InputMethodManager imm = ( InputMethodManager ) v.getContext( ).getSystemService( Context.INPUT_METHOD_SERVICE ); imm.showSoftInput(v,InputMethodManager.SHOW_FORCED); } //强制显示或者关闭系统键盘 public static void KeyBoard(final EditText txtSearchKey,final String status) { Timer timer = new Timer(); timer.schedule(new TimerTask(){ @Override public void run() { InputMethodManager m = (InputMethodManager) txtSearchKey.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); if(status.equals("open")) { m.showSoftInput(txtSearchKey,InputMethodManager.SHOW_FORCED); } else { m.hideSoftInputFromWindow(txtSearchKey.getWindowToken(), 0); } } }, 300); } //通过定时器强制隐藏虚拟键盘 public static void TimerHideKeyboard(final View v) { Timer timer = new Timer(); timer.schedule(new TimerTask(){ @Override public void run() { InputMethodManager imm = ( InputMethodManager ) v.getContext( ).getSystemService( Context.INPUT_METHOD_SERVICE ); if ( imm.isActive( ) ) { imm.hideSoftInputFromWindow( v.getApplicationWindowToken( ) , 0 ); } } }, 10); } //输入法是否显示着 public static boolean KeyBoard(EditText edittext) { boolean bool = false; InputMethodManager imm = ( InputMethodManager ) edittext.getContext( ).getSystemService( Context.INPUT_METHOD_SERVICE ); if ( imm.isActive( ) ) { bool = true; } return bool; }}原文地址:http://www.cnblogs.com/LIANQQ/p/3573983.html有edittext的界面默认不弹出输入法android:windowSoftInputMode="adjustUnspecified|stateHidden"
0 0
- Android输入法非详解
- Android 输入法windowSoftInputMode详解
- android输入法详解
- Android开发之输入法详解
- Android自定义键盘详解、自定义输入法简介
- android 输入法
- Android 输入法
- Android 输入法
- android:windowSoftInputMode属性详解 避免输入法面板遮挡问题
- 【Android】【输入法】android 自动弹出输入法
- Android开发实例详解之IMF(输入法)(Android SDK Sample—SoftKeyboard)
- 修改其他输入法为android 默认输入法
- Android输入法扩展之远程输入法
- Android输入法扩展之远程输入法
- Android输入法扩展之远程输入法
- Android输入法扩展之远程输入法
- Android输入法扩展之远程输入法
- Android打开输入法和关闭输入法
- ZXing生成二维码
- ACE插件实现web编辑器
- Javah生成JNI文件
- 新手礼包接口
- JS日期插件:My97DatePicker
- android输入法详解
- 实用的sublime插件集合 – sublime推荐必备插件
- hdu 1548
- 关于第三方终端command not found不加载.bash_profile 解决方法
- POJ 2528 Mayor's posters
- LSTM论文翻译-《Understanding LSTM Networks》
- cocos2d - JS 自定义事件(广播)
- 【缩写】常用缩写解释
- python-2.7.11 already installed, it's just not linked解决办法