brunch

[Android] 키보드 안 뜨게 하기

by 오준석

이번 기수 학생들은 유독 소프트 키보드 내리는 것을 좋아한다.


소프트 키보드가 올라오는 이유는 EditText에 포커스가 가기 때문이다.

키보드가 안 올라오게 하는 방법은 여러 꼼수들이 있는데, 그 중에서 비교적 잘 되는 두 가지를 정리 했다.


1. 키보드 내리기

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0);

이 두 줄이면 키보드가 내려간다.


2. 다른 View에 포커스 주기

android:focusable="true"
android:focusableInTouchMode="true"

뷰 그룹이든 다른 뷰이든 위 두 속성을 주면 포커스를 가져가기 때문에 키보드가 올라오지 않는다.

하지만 삼성 기기 중에 이 속성이 안 먹는 기종이 있다.


내 생각에 키보드를 강제로 내려야 편해지는 UX를 만들지 않는 것이 가장 좋은 것 같다.

keyword
매거진의 이전글Android Studio junit4.12 관련 에러