코코딩딩

[안드로이드/android] editText 키보드 자동 열림 본문

일단기록/매일기록

[안드로이드/android] editText 키보드 자동 열림

겟츄 2022. 6. 8. 17:43

무조건 editText를 입력해야 하는 화면에서 바로 키보드가 열리는 동작을 구현하려면 다음과 같은 코드를 사용하면 된다.

 

//name이라는 id를 가진 editText를 자동 선택해서 키보드가 열리게함


binding.name.requestFocus();
imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
        
        
// 다음 화면 이동 했을 때 및 pause같은 동작을 했을 때도 키보드가 뜨기 때문에 키보드 숨기는 코드 추가
        
        
    @Override
    protected void onDestroy() {
        imm.hideSoftInputFromWindow(getWindow().getDecorView().getWindowToken(), 0);
        super.onDestroy();
    }

    @Override
    protected void onPause() {
        imm.hideSoftInputFromWindow(getWindow().getDecorView().getWindowToken(), 0);
        super.onPause();
    }

    @Override
    protected void onStop() {
        imm.hideSoftInputFromWindow(getWindow().getDecorView().getWindowToken(), 0);
        super.onStop();
    }