private fun initTextChange() {
binding.editTextName.addTextChangedListener(object:TextWatcher{
override fun afterTextChanged(p0: Editable?) {
val test = Toast.makeText(requireContext(),"변경",Toast.LENGTH_LONG)
test.show()
}
override fun beforeTextChanged(text: CharSequence?, start: Int, count: Int, after: Int) {
}
override fun onTextChanged(p0: CharSequence?, start: Int, before: Int, count: Int) {
}
})
}
//binding.editTextName은 XML에서 editTextName으로 editText를 생성 한 후 뷰바인딩으로 묶어야한다.
■ beforeTextChanged(CharSequence s. int start, int count, int after)
- CharSequece s : 현재 EditText에 입력된 값
- int start : s에 저장된 문자열에서 새로 추가될 문자열의 시작 위치 값
- int count : s에 새로운 문자열이 추가된 후 문자열의 길이
- int after : 새로 추가될 문자열의 길이
■ onTextChanger(CharSequence s, int start, int before, int count)
start 위치에서 before 문자열 개수만큼 문자열이 count 개수만큼 변경되었을 때 호출
- CharSequence s : 새로 입력한 문자열이 추가된 EditText의 값을 가지고 있음
- int start : 새로 추가된 문자열의 시작 위치 값
- int before : 삭제된 기존 문자열의 개수
- int count : 새로 추가된 문자열의 개수
■ afterTextChanged(Editalbe a)
EditText의 Text가 변경된 것을 다른 곳에 통보할 때 사용됩니다. a.toString()을 통해 현재 EditText의 Text 값을 불러오는 게 가능
EditText의 Text 변경에 따른 함수 호출 순서는 beforeTextChanged -> onTextChanger -> afterTextChanged
'프로그래밍 > Android' 카테고리의 다른 글
갑자기 AVD가 부트창에서 부팅이 안될때 (0) | 2021.10.22 |
---|---|
프래그먼트에서 뒤로가기 버튼을 눌렀을때 이벤트 처리 (0) | 2021.10.20 |
Relative layout 사용법 (0) | 2021.09.14 |
안드로이드 스튜디오 영어가 이상하게 써질때 (0) | 2021.09.07 |
[Android] 네비게이션 드로어 코드(좌측메뉴) (0) | 2021.08.08 |
댓글