Android編程實現點擊EditText之外的控件隱藏軟鍵盤功能
更新時間:2017年06月14日 09:28:38 作者:_iorilan
這篇文章主要介紹了Android編程實現點擊EditText之外的控件隱藏軟鍵盤功能,涉及Android控件的功能、屬性及相關操作技巧,需要的朋友可以參考下
本文實例講述了Android編程實現點擊EditText之外的控件隱藏軟鍵盤功能。分享給大家供大家參考,具體如下:
工具類
...
public static void hideKeyboard(Context ctx) {
if (ctx != null) {
View view = ((Activity) ctx).getCurrentFocus();
if (view != null) {
InputMethodManager inputManager = (InputMethodManager) ctx
.getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.hideSoftInputFromWindow(view.getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
}
}
}
點擊除EDITTEXT之外的控件隱藏軟鍵盤,如果是viewgroup控件,遞歸執(zhí)行
public static void setupUI(View view, final Context ctx) {
//Set up touch listener for non-text box views to hide keyboard.
if(!(view instanceof EditText)) {
view.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
hideKeyboard(ctx);
return false;
}
});
}
//If a layout container, iterate over children and seed recursion.
if (view instanceof ViewGroup) {
for (int i = 0; i < ((ViewGroup) view).getChildCount(); i++) {
View innerView = ((ViewGroup) view).getChildAt(i);
setupUI(innerView, ctx);
}
}
}
...
}
調用時只需要傳遞最外層的layout即可。
UtilApp.setupUI((RelativeLayout) findViewById(R.id.login_parent), mContext);
更多關于Android相關內容感興趣的讀者可查看本站專題:《Android控件用法總結》、《Android開發(fā)入門與進階教程》、《Android視圖View技巧總結》、《Android編程之activity操作技巧總結》、《Android數據庫操作技巧總結》及《Android資源操作技巧匯總》
希望本文所述對大家Android程序設計有所幫助。
相關文章
Android實現九宮格(GridView中各項平分空間)的方法
這篇文章主要介紹了Android實現九宮格(GridView中各項平分空間)的方法,涉及Android針對GridView操作的相關技巧,需要的朋友可以參考下2015-06-06

