TextWatcher만 단순히 놓고 보자면 얘는 텍스트 입력에 변화가 있을 때마다 이벤트에 맞춰 호출 되는 클래스다.
Summmary를 살펴 보면 가지고 있는 인터페이스는 총 3개
afterTextChanged(Editable s)
- Text 변화 후 발생
beforeTextChanged(CharSequence s, int start, int count, int after)
- 새로운 텍스트 길이로 변화 하게 되면 발생
onTextChanged(CharSequence s, int start, int before, int count)
- 텍스트 변경 시마다 불림
사실 가장 많이 사용되는게 onTextChanged 인데 가만 보면 각각 이벤트를 맞춰서 해줘야 할 때가 적지 않은 것 같다.
Editable, CharSequence 모두 현재 입력되고 있는 텍스트를 의미한다. start는 시작 위치, count는 글자의 길이, before는 붙여넣기나 잘라내기를 할 때 나타나는 이전에 존재하던 길이를 의미한다. after는 이후의 길이를 말한다.
setSpan을 보면 start, end Index를 입력 받게 되던데. 이때 주로 start, start+count를 이용한다.
실제 값을 찍어보면 EditText는 1정도의 공간을 가지고 있다. 즉 한칸도 입력되지 않아도 기본 length는 1.
'안드로이드' 카테고리의 다른 글
구글 Power Manager 정리 PPT 자료 (0) | 2011.01.27 |
---|---|
adb shell 처리 방법 (0) | 2011.01.27 |
문자열 자동완성 (0) | 2011.01.27 |
전화중인 상태 체크하기 (0) | 2011.01.27 |
Telephony 기능 (0) | 2011.01.27 |