우선 출발은 EditText 부분을 눌렀을 때 키보드가 올라오지 않게하고, NumberPicker를 띄워 입력값을 지정할 수 있도록 하는 것이었다.
그런데 다른 EditText 부분들이 함께 있다보니 다른 부분을 키보드로 입력하다 해당 타겟쪽으로 오게되면 자동으로 키보드를 불러오는지라
타겟 이외에 다른 EditText 부분들도 전부 막아주는 노력을 해서 키보드를 완전히 막는데는 성공했는데
다음 문제는 EditText 부분을 두 번 클릭해줘야 (혹은 선택되어 포커스 되어있는 상태에서 한 번) OnClick를 인식하는 것이었다.
한글 문서로 되지 않을 때는 다음 영어로 입력을 시작하면 된다. 그렇게 스택 오버플로우에서 해답을 찾을 수 있었다.
타겟으로 둔 EditText의 android:focusableInTouchMode 를 false로 설정해주고 나면 이후에는 클릭 한번으로
OnClick을 수행하는 걸 확인할 수 있다.
< 필요한 세 가지>
타겟.setInputType(0); // 키보드 막기
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
타겟.setInputType(1);
mgr.showSoftInput(userWeight, InputMethodManager.SHOW_IMPLICT);
< 참고 >
https://stackoverflow.com/questions/10493560/single-click-edittext
'ANDROID' 카테고리의 다른 글
[안드로이드] 파일 생성을 위한 권한접근이 되지 않을 때 (0) | 2018.01.23 |
---|---|
[안드로이드] 액티비티 파일 안에서 Dialog의 EditText 키보드 막기 (0) | 2018.01.19 |
[안드로이드] NumberPicker 테마가 이상할 때 (0) | 2018.01.18 |
[안드로이드] ScaleAnimation으로 그래프 애니메이션 구현하기 (0) | 2018.01.17 |
[안드로이드] Thread를 이용해 ProgressBar 진행 구현하기 (0) | 2018.01.11 |