Android程序打开和关闭输入法
博客专区 > SRain215 的博客 > 博客详情
Android程序打开和关闭输入法
SRain215 发表于2年前
Android程序打开和关闭输入法
  • 发表于 2年前
  • 阅读 101
  • 收藏 1
  • 点赞 0
  • 评论 0

【腾讯云】买域名送云解析+SSL证书+建站!>>>   

摘要: Android下对输入法的操作,简单用法:

一、打开输入法窗口:

/**
 * 动态显示软键盘
 *
 * @param context 上下文
 * @param edit    输入框
 */
public static void showSoftInput(Context context, EditText edit) {
	edit.setFocusable(true);
	edit.setFocusableInTouchMode(true);
	edit.requestFocus();
	InputMethodManager inputManager = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
	inputManager.showSoftInput(edit, 0);
}

 

二、关闭出入法窗口

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);  
imm.hideSoftInputFromWindow(OpeListActivity.this.getCurrentFocus().getWindowToken(),  InputMethodManager.HIDE_NOT_ALWAYS);
/**
 * 隐藏软键盘
 */
public static void hideKeyboard(Activity c) {
	try {
		InputMethodManager imm = (InputMethodManager) c.getSystemService(Context.INPUT_METHOD_SERVICE);
		imm.hideSoftInputFromWindow(c.getCurrentFocus().getWindowToken(), 0);
	} catch (NullPointerException e) {
		Log.e("hideKeyboard", e.toString());
	}
}

 

三、如果输入法打开则关闭,如果没打开则打开

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);  
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);

 

四、获取输入法打开的状态

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);  
boolean isOpen=imm.isActive();  
//isOpen若返回true,则表示输入法打开

 

键盘相关工具类:

KeyboardUtils.java

 

标签: 工具类 键盘
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 17
博文 140
码字总数 89414
×
SRain215
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: