2010-12-03 4 views
0

edittext에 정확하게 4 자리/글자가 입력되면 코드를 실행하려면 어떻게해야합니까?정확하게 4 자리/글자가 편집문에 입력되었을 때 코드를 실행하는 방법

+1

"일부 코드 실행"이란 의미를 명확히해야합니다. 정확히 4자를 입력했는지 확인하고 싶습니까? 네 번째 문자가 입력되면 작업을 시작하려고합니까? 버튼을 눌렀을 때 네 개의 문자가 있고 네 개가 아닌 다른 동작이있는 경우 한 가지 작업을 수행하고 싶습니까? – Blumer

+0

이것에 덧붙이 자면, 사용자가 터치 스크린에 타이핑 할 것이라는 점을 명심하십시오. 제 의견으로는 입력이 부정확 한 부정확 한 방법입니다. 따라서 잘못된 네 번째 숫자를 입력하고이를 수정하려고 할 가능성이 있습니다. 코드가 자동으로 실행되면 좌절로 이어질 수 있습니다. – kcoppock

답변

4

편집 텍스트에 TextWatcher를 추가하기 만하면됩니다.

myEditText.addTextChangedListener(new TextWatcher() { 
@Override 
public void onTextChanged(CharSequence s, int start, int before, int count) { 
    if(messageText.getText().length() == 4){ 
    //call a function here 
    } 
} 
@Override 
public void afterTextChanged(Editable s) {} 
@Override 
public void beforeTextChanged(CharSequence s, int start, int count, int after) {} 
}); 
+2

고마워요! 이것은 완벽하게 작동했습니다. 이제 사용자가 네 번째 숫자를 입력하면 함수가 호출되어 숫자가 올바른지 확인합니다. kcoppock이 말했듯이 사용자가 여전히 잘못 입력하면 편집 할 수 있도록 만들었으므로 아무도 여기에서 화를 내질 수 없습니다 :) 감사합니다. – user484146

+0

win-win과 같은 사운드. :) – kcoppock