728x90
반응형
안녕하세요. 찰스입니다!
인도 출장 중에 호텔 격리되어 있을 때 안드로이드 APP 공부하면서 처리했던 기능들 복습노트 용도로 사용하기 위해 작성한 글입니다.
이왕이면 참고하시는 분들도 이해하시는데 도움이 되었으면 좋겠네요~
android:windowSoftInputMode 설정 실행화면
EditText 클릭 전 | 설정 : none, adjustUnspecified, adjustPan |
설정 : adjustResize |
위 화면과 같이 EditText 영역을 클릭하면 키보드가 하단에서 올라옵니다.
경우에 따라 화면을 가려야 할 때도 있고, 화면을 침범하지 않거나 포커스 화면으로 이동해야 할 경우들이 다양하게 있습니다.
각자 필요한 경우에 맞춰 소프트 키보드의 설정하셔서 사용하시면 됩니다.
AndroidManifast.xml 내 activity 설정 코드
<activity android:windowSoftInputMode="adjustResize" ... >
(예시) AndroidManifast.xml - MainAcivity 내 설정
<activity
android:name=".MainActivity"
android:windowSoftInputMode="adjustResize"
...
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
android:windowSoftInputMode 설정 값, 설명 정리
특징 | 값 | 설명 |
"state" 키보드 상태 설정 |
"stateUnspecified" | - 소프트 키보드의 동작에 대한 기본 설정. - 키보드의 상태(숨김 또는 표시)를 지정하지 않음. |
"stateUnchanged" | - 액티비티가 앞으로 나올 때 소프트 키보드가 마지막으로 사용된 상태(숨김 또는 표시)를 유지. | |
"stateHidden" | - 사용자가 다른 액티비티를 떠나고 해당 액티비티로 이동하는 방식으로 해당 액티비티를 선택하면 소프트 키보드 숨김. | |
"stateAlwaysHidden" | - 액티비티 기본 창에 입력 포커스 있는 경우 소프트 키보드 항상 숨김. | |
"stateVisible" | - 일반적으로 해당할 경우(사용자가 액티비티의 기본 창으로 이동하는 경우) 소프트 키보드가 표시. | |
"stateAlwaysVisible" | - 사용자가 다른 액티비티를 떠나고 해당 액티비티로 이동하는 방식으로 해당 액티비티를 선택하면 소프트 키보드가 표시. | |
"adjust" 키보드 + 화면 공간확보 기능 설정 |
"adjustUnspecified" | - 기본 창의 동작에 대한 기본 설정 - 키보드의 공간 확보를 위해 화면 크기 및 포커스 이동을 지정하지 않음. - 스크롤할 수 있는 레이아웃 뷰가 있는 경우 adjustResize, adjustPan중 하나를 자동 선택. |
"adjustResize" | - 소프트 키보드를 위한 공간을 확보하도록 액티비티의 기본 창 크기를 항상 조정. | |
"adjustPan" | - 소프트 키보드를 위한 공간을 확보하도록 액티비티의 기본 창 크기를 조정하지 않음. - 키보드가 현재 포커스를 가리지 않고 사용자가 입력하는 것을 항상 볼 수 있도록 해당 창 콘텐츠로 자동 이동. |
※ state와 ajust의 단일 값을 조합해서 설정 가능합니다. 구분 값은 세로 막대( | )를 사용합니다.
<activity android:windowSoftInputMode="stateVisible|adjustResize" ... >
마지막으로
위 값 설정 시 테마에 설정된 값을 재정의 합니다. (기본 설정인 stateUnspecified, adjustUnspecified 은 제외!)
해당 내용들은 android developers에 더욱 자세하게 설명되어 있습니다.
https://developer.android.com/guide/topics/manifest/activity-element.html#wsoft
키보드가 올라와서 다 사용하고 이제 내려갔으면 좋겠는데, 이 형(?)이 말을 잘 안듣습니다. ㅋㅋㅋㅋ
[Android] 모바일 소프트 키보드 제어 내용 간략히 작성했습니다.
728x90
반응형
'[coding] 코딩 공부하자 > [안드로이드]' 카테고리의 다른 글
[Android] 안드로이드 스튜디오 다운로드 & 설치 방법 (1) | 2021.03.09 |
---|---|
[Android][Java] 자바 키보드 제어 - 내리기, 올리기 (0) | 2020.10.27 |
[Android][Kotlin] 코틀린 키보드 제어 - 내리기, 올리기 (키보드 형, 이제 사라져!) (0) | 2020.10.27 |