思路:所有activity都需要此操作,写一个基类activity,处理点击隐藏事件
做法:在基类activity中加入以下代码
public class MainActivity extends BaseActivity {
InputMethodManager inputMethodManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
if(ev.getAction()==MotionEvent.ACTION_DOWN){
if(MainActivity.this.getCurrentFocus() != null && MainActivity.this.getCurrentFocus().getWindowToken() != null){
inputMethodManager.hideSoftInputFromWindow(MainActivity.this.getCurrentFocus().getWindowToken(),InputMethodManager.HIDE_NOT_ALWAYS);
}
}
return super.dispatchTouchEvent(ev);
}