플랫폼/안드로이드 android

안드로이드 editText 엔터 이벤트 처리 / 검색 이벤트 / 키보드 내리기

삐뚤어진 개발자 2020. 2. 14.

안드로이드 개발중 editText에서 글자를 입력 후 엔터를 눌러도 키보드가 사라지지 않고 남아있었다.

 

editText 글자 입력을 하고 엔터 버튼 (키보드 우측 하단)을 눌렀을 때, 이벤트를 받아 키보드를 내려주겠다.

 

 

 // 키보드를 내려주기위해 inputMethodManger 객체를 생성해준다. 
InputMethodManager imm = (InputMethodManager)mContext.getSystemService(INPUT_METHOD_SERVICE);

//(activity에서 사용할 상황mContext는 빼주고 getSystemService만 써도 된다.)
//InputMethodManager imm = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);

// edit_txt에 액션리스너를 달아준다.
edit_txt.setOnEditorActionListener(newTextView.OnEditorActionListener(){
	@Override
	publicbooleanonEditorAction(TextViewv,intactionId,KeyEventevent){
      switch(actionId){
        case EditorInfo.IME_ACTION_SEARCH :
        //검색 액션을 했을때
        break;
        
        default :
        //기본 엔터키 액션을 했을때
          edit_txt.clearFocus(); //에딧 텍스트 포커스를 제거
          imm.hideSoftInputFromWindow(Header_txt.getWindowToken(),0); //키보드 내려줌.
          
        return false;
        }
        return true;
      }
	});

 

 

안드로이드 editText 엔터 이벤트 처리 / 검색 이벤트 / 키보드 내리기

 

댓글