본문 바로가기

Android

custom IME에서 enter/done 이벤트 반응이 없을때.

EditText에서 기본 구글 IME 는 Done/Enter키가 잘됐는데 Custom IME 를 설치한뒤 Done버튼이 먹지 않는 이슈가 있었다.

로그를 보내 ActionID가 0(IME_ACTION_UNSPECIFIED)로 날라왔다

구글링을 통해 꼼수로 다음과 같이 해결했다.ㅎㅎ


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Edtior.setOnEditorActionListener(new OnEditorActionListener() {
	@Override
	public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
	    if(actionId == EditorInfo.IME_ACTION_DONE ||
		event.getKeyCode() == KeyEvent.KEYCODE_ENTER){ //AcitonID가 0이 날라와 keycode로 enterkey감지 추가
			
		//Enter 입력시 동작.
			
		if(actionId == EditorInfo.IME_NULL){
			//Custom IME 키보드 Hide logic
		}
					
	      }
				
	        return false;
        }
});


이리하여 또 하나의 이슈 극뽁~