달달한 스토리

728x90
반응형

 

오늘도 빡세게 코딩을 하며 시간을 보냈다.

 

하나하나 배운걸 말하기에는 너무나 부족한 시간..

 

조금씩 나누어서 짧게 짧게 정리하기로 했다.

 

사실 오늘 이 기능을 알기 전까지,

 

이런 기능이 있었으면 좋겠다는 생각을 했다.

 

텍스트가 바뀔때마다 무언가 실행되는 메서드는 없을까?

 

하고 말이다.

 

사실 API문서 읽는 것도 서툰 나로써는 누군가에게

 

물어보거나 우연히 구글링 중 발견한 기술들이 전부기 때문이다.

 

하지만 이제 API문서는 완벽하진 않지만, 어느정도 읽고 있다.

 

이야기가 길어졌다.

 

TextWatcher를 한번 살펴보자

 


사용법

textView.addTextChangedListener(new TextWatcher() {
           @Override
           public void beforeTextChanged(CharSequence s, int start, int count, int after) { //텍스트가 바뀌기전

           }

           @Override
           public void onTextChanged(CharSequence s, int start, int before, int count) { //텍스트가 바뀌는 중일 때,

           }

           @Override
           public void afterTextChanged(Editable s) { //텍스트가 바뀌고 난 후
              String wiseValue = wiseView.getText().toString();
               if(wiseValue.equals("오류")){
                  //값 실행.
               }
           }
       });

자바 코드만 짧게 올리겠다.

 

나같은 경우는 textView를 선언해두고나서, 

 

addTextChagedListener를 호출하면 저렇게

 

세개의 메서드가 나타난다.

 

위에서부터 순서대로 메서드가 실행되는데,

 

텍스트가 바뀌기전,

 

텍스트가 바뀌는 중일 떄,

 

텍스트가 바뀌고 난 후이다.

 

안에 인자들은 활용하지는 않았지만,

 

textView가 "오류"라는 글자를 넘겨받아 setText로 글자가 변경되면,

 

값을 실행하게 되는 것이다.

 

여러가지 상황에서 switch문을 응용해도 좋을 것 같다.

 

 

728x90
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading