欢迎访问生活随笔!

生活随笔

您现在的位置是:首页 > 形式科学 > 计算机科学 > IT网络

IT网络

在编辑中关闭或隐藏输入法

发布时间:2022-11-21IT网络 小博士
1.EditText有焦点(focusable为true)防止输入法弹出。
Java代码
editText =(editText)findViewById(r . id . txt body);editText.s

1、EditText有焦点(focusable为true)阻止输入法弹出

Java代码

editText=(EditText)findViewById(R.id.txtBody);

editText.setOnTouchListener(newOnTouchListener(){

publicbooleanonTouch(Viewv,MotionEventevent){

editText.setInputType(InputType.TYPE_NULL);//关闭软键盘

returnfalse;

}

});

2、当EidtText无焦点(focusable=false)时阻止输入法弹出

Java代码

InputMethodManagerimm=(InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);

imm.hideSoftInputFromWindow(editText.getWindowToken(),0);

3、显示输入法

Java代码

InputMethodManagerimm=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(m_receiverView(接受软键盘输入的视图(View)),InputMethodManager.SHOW_FORCED(提供当前操作的标记,SHOW_FORCED表示强制显示));

4、隐藏输入法

Java代码

((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(),InputMethodManager.HIDE_NOT_ALWAYS);(WidgetSearchActivity是当前的Activity)

5、获取输入法状态

Java代码

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