Platform/Android
[EditText] 문자열 변경을 감지하고 싶을 때? addTextChangedListener
개랭갱깽스타
2022. 2. 28. 12:10
EditText 에서 문자열 변경에 따른 처리를 해주고 싶을 때 유용한 리스너이다.
id_edit_text.addTextChangedListener(object: TextWatcher {
//변경되기 전, 변경되는 정보를 전달해주기 위한 메서드
//p0: 현재 입력된 문자열
//p1: 변경 시작할 위치(start)
//p2: 시작할 위치 부터 변경될 길이(count)
//p3: 변경 후, 변경된 길이(after)
override fun beforeTextChanged(p0: CharSequence?, p1: Int, p2: Int, p3: Int) {
TODO("Not yet implemented")
}
//변경되는 시점에 변경"된" 정보를 전달해주기 위한 메서드
//p0: 현재 입력된 문자열 Warning) p0를 변경할 시, 해당 메서드가 재호출 된다! 무한루프에 빠질 수도 있음!
//p1: 변경 시작할 위치(start)
//p2: 이전 문자열에서 해당 길이만큼 바뀜(before)
//p3: 시작할 위치 부터 변경될 길이(count)
override fun onTextChanged(p0: CharSequence?, p1: Int, p2: Int, p3: Int) {
TODO("Not yet implemented")
}
//p0 내의 어느 문자열이 변경되었음을 알려주기 위해 호출되는 메서드
override fun afterTextChanged(p0: Editable?) {
TODO("Not yet implemented")
}
})
이 리스너를 이용해서
EditText 입력값이 있을 때와 없을 때, EditText 의 밑줄(?) 을 변경할 수 있다.
android:backgroundTint
해당 리스너를 이용해서 방법이 궁금하다면?
⬇️⬇️⬇️
.참고
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=777lover&logNo=10131263714
반응형