안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
안드로이드 EditText에서 키를 가로채서 제가 약간의 조작을 해 준 후에 창에 나오게 하고 싶습니다.
즉, 예를 들어서 "androidpub" 라는 문자를 입력 받게 될 때
"Androidpub" 라고 표현하고 싶은데요.
다만 입력이 끝난 후가 아니라 입력이 받고 있을 때 "a" 가 들어오는 순간 첫 글자면 "A"로 변환해 보고 싶습니다.
즉 소문자를 대문자로 변환하는 것이죠.
이벤트 받는걸 찾아봤으나.. 훅은 가능해도 조작을 할 수 가 없더군요.
여기 저기 찾아봤으나 제가 검색이 딸리는 것인지 못 찾겠네요.
혹시 아시는 분 약간의 힌트라도 좋으니 부탁드립니다.
즐거운 하루 되시구요 :)
안드로이드 EditText에서 키를 가로채서 제가 약간의 조작을 해 준 후에 창에 나오게 하고 싶습니다.
즉, 예를 들어서 "androidpub" 라는 문자를 입력 받게 될 때
"Androidpub" 라고 표현하고 싶은데요.
다만 입력이 끝난 후가 아니라 입력이 받고 있을 때 "a" 가 들어오는 순간 첫 글자면 "A"로 변환해 보고 싶습니다.
즉 소문자를 대문자로 변환하는 것이죠.
이벤트 받는걸 찾아봤으나.. 훅은 가능해도 조작을 할 수 가 없더군요.
여기 저기 찾아봤으나 제가 검색이 딸리는 것인지 못 찾겠네요.
혹시 아시는 분 약간의 힌트라도 좋으니 부탁드립니다.
즐거운 하루 되시구요 :)
2010.02.08 10:58:21
TextWatcher watcher = new TextWatcher()
{
public void afterTextChanged(Editable arg0)
{
}
public void beforeTextChanged(CharSequence s, int start,int count, int after)
{
}
public void onTextChanged(CharSequence s, int start,int before, int count)
{
}
};
titleMainText.addTextChangedListener(watcher);
이렇게 해서 보면 리턴값이 void 이고 그 값을 강제로 .setText() 함수를 이용해서 해도 원하는대로 되지 않았습니다.
혹시 다른 방법은 없는지요?
{
public void afterTextChanged(Editable arg0)
{
}
public void beforeTextChanged(CharSequence s, int start,int count, int after)
{
}
public void onTextChanged(CharSequence s, int start,int before, int count)
{
}
};
titleMainText.addTextChangedListener(watcher);
이렇게 해서 보면 리턴값이 void 이고 그 값을 강제로 .setText() 함수를 이용해서 해도 원하는대로 되지 않았습니다.
혹시 다른 방법은 없는지요?
//참고로 저는 자바공부한지 2틀째 ㅠㅠ라서 맞는지는 모르겠지만... 제 생각은 이렇네요
onKeyUp()을 사용하셔서
첫 글짜라면 대문자로 바꾸어 주시면 될거 같은데요?