안드로이드 키보드 화면 밀기
개발/안드로이드 2019. 7. 17. 20:24EditText나 웹뷰에서 키보드(키패드)가 올라올때 화면이 작아진다든지 키보드에 가려져서 안보이는 현상이 발생 합니다.
이럴때 Layout 은 그대로 있고 화면을 밀어 올려 자연스럽게 입력 할 수 있는 상태로 바꿀 수 있는 방법에 대해 알아봅시다.
2가지 방법 중 하나의 방법으로 선택하여 사용하시면 됩니다.
(EditText 에도 속성 추가하여 할 수 있지만 이 방법은 잘 사용하지 않아 제외 합니다.)
1) AndroidManifest.xml 의 Activity 에 키보드 속성 추가하는 방법
windowSoftInputMode 에 "adjustPan"을 추가합니다.
<activity android:name=".MainActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize|adjustPan">
</activity>
2) MainActivity.java에서 키보드 속성 추가하는 방법
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
잘 사용하는 설정값이 adjustPan 입니다. 그외 설정 값에 대해서는 아래에 설명하도록 하겠습니다.
필요에 따라 사용해보시면 됩니다.
stateUnspecified : 키보드 디폴트 설정 값
stateUnchanged : 키보드 마지막 상태 유지
stateHidden : 사용자 액티비티 선택 시 키보드 숨김
stateAlwaysHidden : 액티비티 메인 윈도우가 입력 포커스를 가질 때 키보드는 항상 숨김
stateVisible : 사용자가 액티비티 메인 윈도우 앞으로 갈 때 키보드 숨김
stateAlwayVisible : 사용자가 액티비티 선택할 때 키보드 보여줌
adjustUnspecified : 스크롤 할 수 있는 레이아웃 화면을 가지고 있다면 윈도우 크기 재 조정, 메인 윈도우 디폴트 값
adjustResize : 스크린 키보드 공간을 만들기 위해 메인 윈도우 크기를 재 조정
adjustPan : 키보드 공간을 만들기 위해 메인 윈도우의 크기가 재조정 되지 않음
'개발 > 안드로이드' 카테고리의 다른 글
안드로이드Q 개인정보 보호정책 변경사항 (식별자 수집 방법) (0) | 2019.07.09 |
---|---|
안드로이드 WebView에서 카메라 및 사진 갤러리 이미지 업로드 하기 (0) | 2018.06.14 |
안드로이드 앱간 파일 공유방법 (FileProvider 대응) (0) | 2018.05.30 |
안드로이드 설치된 앱 목록 가져오기 (3) | 2018.02.07 |
안드로이드 aar 라이브러리 추가하기 (0) | 2018.01.28 |
안드로이드 화면꺼짐 방지하기! (2) | 2018.01.22 |
안드로이드 Listview 가로줄 색 변경 하거나 없애는 방법 (0) | 2017.12.12 |
안드로이드 8.0(oreo)에서 '출처를 알 수 없는 앱' 체크 방법 (3) | 2017.11.24 |