일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- android recyclerview
- 영어공부
- 영어독립365
- MVP Architecture
- Java
- 카카오 알고리즘
- WebView
- Android DataBinding
- Android 12 대응
- DataBinding
- Android
- Android 12
- Android Navigation
- scope function
- 안드로이드 fcm
- Android ViewPager2
- 알고리즘 자바
- Android WebView
- Kotlin
- Android Interceptor
- OkHttp Interceptor
- 안드로이드 갤러리 접근
- 안드로이드 카카오 로그인
- Android Jetpack
- Android ProgressBar
- 프로그래머스 알고리즘
- Kotlin FCM
- 안드로이드
- 66챌린지
- 습관만들기
Archives
- Today
- Total
Developer Geek
Android EditText 키보드 내리기 (kotlin) 본문
반응형
개요 (실행화면, 간단한 앱 설명)
이슈 화면
RecyclerView를 공부한 중 EditText에 텍스트를 입력하고 저장 버튼을 눌렀을 때, 키보드가 닫히지 않는 불편함이 있었다.
해결 화면
해당 포커스를 갖는 EditText를 제외한 영역을 누르면 키보드가 내려가도록 했다.
Code - Example
MainActivity.kt
해당 Activity에서 dispatchTouchEvent() 함수를 오버라이드 해준다.
override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
val focusView = currentFocus
if (focusView != null && ev != null) {
val rect = Rect()
focusView.getGlobalVisibleRect(rect)
val x = ev.x.toInt()
val y = ev.y.toInt()
if (!rect.contains(x, y)) {
val imm = getSystemService(INPUT_METHOD_SERVICE) as InputMethodManager
imm?.hideSoftInputFromWindow(focusView.windowToken, 0)
focusView.clearFocus()
}
}
return super.dispatchTouchEvent(ev)
}
반응형
'안드로이드' 카테고리의 다른 글
안드로이드 Retrofit Header 추가 Kotlin (0) | 2022.01.19 |
---|---|
Android TextView 말줄임(...) Kotlin, DataBinding (0) | 2022.01.15 |
안드로이드 바텀 내비게이션 예제 Kotlin (0) | 2021.12.22 |
안드로이드 공유하기 예제 Kotlin (0) | 2021.12.16 |
Android Naver Map - MapView 기본 사용 예제 (Kotlin) (0) | 2021.12.07 |
Comments