본문 바로가기

개발/android

Android EditText textMultiLine Action 버튼, Enter key 이벤트 받기

반응형

Edittext를 쓰다보면 Enter 키 이벤트를 받고 싶을 때가 있는데 

어째서인가 잘 쓰던 setOnEditorActionListener가 

android:inputType="text"에서는 잘 작동하되, 

android:inputType="textMultiLine" 에서는 작동하지 않았다

 

하루를 내내 삽질하다가 알게 된건 

코드에서만 적용 가능한 부분이 있다는 것이었다(xml의 inputType 만으로는 정상 작동 X)

 

xml에 android:inputType="text" 가 아닌경우 android:imeOptions="actionDone" 은 actionNext, actionDone등 기기에 따라 일반 동작은 가능할 수도 있으나, 안되는 경우도 있음 


xml에 android:inputType="textMultiLine"

code에서

editText.imeOptions = EditorInfo.IME_ACTION_NONE
editText.setRawInputType(InputType.TYPE_CLASS_TEXT)

같이 코드에서 수동으로 적용하니

setOnEditorActionListener가 이벤트를 잡고 의도대로 동작하였다

 

 

참고 URL

https://stackoverflow.com/a/41022589 

 

 

반응형