showSoftInput 와 hideSoftInputFromWindow 를 사용할 때 flag 값에 따른 결과를 유추해보았습니다.
## showSoftInput에 flag 값이 0일때
hideSoftInputFromWindow(view.getWindowToken,0) : 닫힘 (Closed)
hideSoftInputFromWindow(view.getWindowToken,InputMethodManager.HIDE_NOT_ALWAYS) : 닫힘 (Closed)
hideSoftInputFromWindow(view.getWindowToken,InputMethodManager.HIDE_IMPLICIT_ONLY) : 안 닫힘 (Not Closed)
## showSoftInput에 flag 값이 SHOW_FORCED일때
hideSoftInputFromWindow(view.getWindowToken,0) : 닫힘 (Closed)
hideSoftInputFromWindow(view.getWindowToken,InputMethodManager.HIDE_NOT_ALWAYS) : 안 닫힘 (Not Closed)
hideSoftInputFromWindow(view.getWindowToken,InputMethodManager.HIDE_IMPLICIT_ONLY) : 안 닫힘 (Not Closed)
## showSoftInput에 flag 값이 SHOW_IMPLICIT일때
hideSoftInputFromWindow(view.getWindowToken,0) : 닫힘 (Closed)
hideSoftInputFromWindow(view.getWindowToken,InputMethodManager.HIDE_NOT_ALWAYS) : 닫힘 (Closed)
hideSoftInputFromWindow(view.getWindowToken,InputMethodManager.HIDE_IMPLICIT_ONLY) : view의 focus 가 바뀌지 않는 이상 닫힘 (It's closed just if view is focued)
## 결론
위 테스트로써 내릴 수있는 결론
1. hideSoftInputFromWindow flag에 0를 주면 어떠한 상황에서든 닫힘
2. hideSoftInputFromWindow flag에 HIDE_NOT_ALWAYS를 주면 SHOW_FORCED를 제외하고는 닫힘
3. hideSoftInputFromWindow flag에 HIDE_IMPLICIT_ONLY 를 주면, SHOW_IMPLICIT 로 보여진 키보드만 닫힘
하지만, 보여준 view의 포커스가 변하면 닫히지 않음.
구글링이나 검색을 열심히 해봐도 위와 같은 테스트 데이터가 없길래 한번 만들어 봤습니다.
위 상황을 테스트한 App도 첨부하니 참고하세요.
## 이블로그는 어디까지는 찾았던 부분을 잊지 않기 위해 올려놓은 것 입니다.
내용이 부실해도 이해해 주시길 바랍니다.
'나의 플랫폼 > 안드로이드' 카테고리의 다른 글
[Android] RecyclerView에 헤더 붙이기 (0) | 2015.11.20 |
---|---|
[Android] Set recyclerView span dynamically (0) | 2015.11.20 |
[Android][스크랩] edittext 관련 사항들.. (0) | 2015.11.20 |
[Android] 앱을 종료 하고자 할때 (1) | 2015.11.20 |
[Apache] Http 관련 라이브러리 사용시 주의사항!! (0) | 2015.11.19 |