Android编程实现点击EditText之外的控件隐藏软键盘功能
本文实例讲述了Android编程实现点击EditText之外的控件隐藏软键盘功能。分享给大家供大家参考,具体如下:
工具类
...
publicstaticvoidhideKeyboard(Contextctx){
if(ctx!=null){
Viewview=((Activity)ctx).getCurrentFocus();
if(view!=null){
InputMethodManagerinputManager=(InputMethodManager)ctx
.getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.hideSoftInputFromWindow(view.getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
}
}
}
点击除EDITTEXT之外的控件隐藏软键盘,如果是viewgroup控件,递归执行
publicstaticvoidsetupUI(Viewview,finalContextctx){
//Setuptouchlistenerfornon-textboxviewstohidekeyboard.
if(!(viewinstanceofEditText)){
view.setOnTouchListener(newOnTouchListener(){
publicbooleanonTouch(Viewv,MotionEventevent){
hideKeyboard(ctx);
returnfalse;
}
});
}
//Ifalayoutcontainer,iterateoverchildrenandseedrecursion.
if(viewinstanceofViewGroup){
for(inti=0;i<((ViewGroup)view).getChildCount();i++){
ViewinnerView=((ViewGroup)view).getChildAt(i);
setupUI(innerView,ctx);
}
}
}
...
}
调用时只需要传递最外层的layout即可。
UtilApp.setupUI((RelativeLayout)findViewById(R.id.login_parent),mContext);
希望本文所述对大家Android程序设计有所帮助。
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短