当安卓设备插上Id读卡器后,当切换到输入框中的时候出现了软键盘不显示的问题,请问哪位遇见过此问题,如何解决的?
需要在android设备软键盘设置:系统设置-->系统-->语言和输入法-->实体键盘(IC Reader IC Reader)-->显示虚拟键盘开关打开,
这样软键盘会显示,也可能不自动隐藏,需要根据相关逻辑手动进行隐藏,如下:
usernameEditText = findViewById(R.id.username);
usernameEditText.setOnFocusChangeListener(new View.OnFocusChangeListener() {//获取焦点后显示软键盘,失去焦点后隐藏软键盘
@Override
public void onFocusChange(View view, boolean b) {
if(b == true) {
//LogUtils.e("=4=","username获取焦点");
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);
} else {
//LogUtils.e("=4=","username失去焦点");
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(usernameEditText.getWindowToken(), 0); //强制隐藏键盘
//imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);
}
}
});
```java
```