입력시에 확인 혹은 엔터 입력으로 자동으로 포커스를 옮기면 안드로이드 기본 키보드의 경우 소프트 키보드가 표시되지 않습니다.
마켓에서 다운받은 키보드의 경우 (딩굴 키보드 같은)는 문제 없는데 기본 키보드는 반응이 다르더군요.
해결법을 검색해보니 ImputMethodmanager를 사용해서 제어가 가능하다고 되어 있더군요.그런데 해보지 역시 움직이지 않아요.
정확한 내용을 파악한 것은 아니지만 결과적으로 타이밍 문제라 키보드를 표시/숨기는 로직 자체가 포커스 변경 이벤트로 부터 지연처리를 해줘햐 한다는 것이었습니다.
Handler mHndlr = new Handler();
Message m = Message.obtain(mHndlr, new Runnable() {
@Override
public void run() {
mIMM.showSoftInput(((Activity)mCtx).getCurrentFocus(), 0);
}
});
mHndlr.sendMessage(m);




최근 덧글