[안드로이드 공부]/UI

안드로이드 Edittext 엔터 인식 및 event null 처리

코코모아 2015. 10. 8. 14:38

아래는 코모스튜디오가 직접 만든 무료 앱이에요
(한 번만 봐주세요 ^^)

01

02

03

정각알림 만들기(말하는시계)

말하는 시계 (취침, 자전거) 

말하는 타이머 음성 스톱워치 

안드로이드  에디터 텍스트(edit text)에서 엔터키나 Done키를 받기 위해서는 아래와 같이 리스너(setOnEditorActionListener) 를 등록 하면 된다. 



그런데 여기서 문제가 있다. event가 null 이 들어 오는 것이다. 죽음이란 거다. 이럴 경우 null 처리(event != null &&)를 해주면 그만이겠거니 하고 생각 하겠지만... 그렇다면 엔터에 대한 반응 처리를 못하니 다시 텍스트를 입력 해야 하는 현상이 발생한다. 큰일이다.... 그럼 어떻게 해야... 널 처리도 하고... 이벤트도 정상적으로 받을 수 있을까 ?

자, 위와 같이 처리 하면 널 체크는 피하고 엔터키로 들어 올 수 있도록 막아 준다. 즉, 이전 코드에서 널 체크를 하면 엔터로 들어 오지 않으니 엉망인 코드가 되었지만, 이젠 둘 다 처리 할 수 있는 스마트한 코드가 되었다.

모든 게시물은 코모스튜디오의 소유이며, 무단 복제 수정은 절대 불가입니다.
퍼가실 경우 댓글과 블로그 주소를 남기고 해당 게시물에 출처를 명확히 밝히세요.