AndroidクリックEditText以外の領域隠しキーボードFragmentも同様に適用

1360 ワード

@Override
public boolean onTouchEvent(MotionEvent event) {
    if (event.getAction() == MotionEvent.ACTION_DOWN) {
        View v = getCurrentFocus();
        if (v!=null&&(!(v instanceof EditText)||!(v instanceof AppCompatEditText))){
            InputMethodManager im = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            im.hideSoftInputFromWindow(MainActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);

        }
    }

    return super.onTouchEvent(event);
} 
                  EditTextView  AppCompatEditText,       ,           ,Fragment      ,     Fragment   Activity     Fragment