对于EditText 可以设置setInputType(InputType.TYPE_NULL);输入法就不会弹出。需要的时候在动态设置InputTyep.
如果一加载Activity 可以用getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
隐藏输入法,就不用判断焦点了。o(∩_∩)o
如果是想获取到焦点的时候隐藏输入法,可以试下(我没试过,但是在工程代码里看到了。就记录下)
// 隐藏手机键盘
private void hideIM(View edt) {
try {
InputMethodManager im = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
IBinder windowToken = edt.getWindowToken();
if (windowToken != null) {
im.hideSoftInputFromWindow(windowToken, 0);
}
} catch (Exception e) {
}
}
在设置OnFocusChangeListener时,可以这样调用
kaishiriqi.setOnFocusChangeListener(new View.OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus == true) {
timeFlag = 0;
hideIM(v);
showDialog(0);
}
}
});
方法还有很多,先记录到这。欢迎补充。。。。
原文地址:http://3409736.blog.51cto.com/3399736/1600579