// 隐藏系统键盘
public
void
hideSoftInputMethod(EditText ed){
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
int
currentVersion = android.os.Build.VERSION.SDK_INT;
String methodName =
null
;
if
(currentVersion >=
16
){
// 4.2
methodName =
"setShowSoftInputOnFocus"
;
}
else
if
(currentVersion >=
14
){
// 4.0
methodName =
"setSoftInputShownOnFocus"
;
}
if
(methodName ==
null
){
ed.setInputType(InputType.TYPE_NULL);
}
else
{
Class<EditText> cls = EditText.
class
;
Method setShowSoftInputOnFocus;
try
{
setShowSoftInputOnFocus = cls.getMethod(methodName,
boolean
.
class
);
setShowSoftInputOnFocus.setAccessible(
true
);
setShowSoftInputOnFocus.invoke(ed,
false
);
}
catch
(NoSuchMethodException e) {
ed.setInputType(InputType.TYPE_NULL);
e.printStackTrace();
}
catch
(IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch
(IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch
(InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}