스크롤뷰 이동후 에딧텍스트 포커스

조회수 2881회

스크롤뷰 안에 EditText가 있고 버튼을 누르면 EditText가 Gone에서 Visible되고 있습니다.

버튼을 누를때 스크롤뷰 끝까지 이동후 EditText에 포커스를 주고싶습니다.

sv.post(new Runnable() {
    @Override
     public void run() {
        sv.fullScroll(View.FOCUS_DOWN);
     }
 });

스크롤뷰의 가장 아래로 이동후

et_comment.requestFocus();
et_comment.setCursorVisible(true);
mgr.showSoftInput(et_comment, InputMethodManager.SHOW_FORCED);

에딧텍스트에 포커스를 주고 키패드를 올리고있습니다.

스크롤을 아래로 이동하는 부분을 빼고 그냥하면 에딧텍스트에 커서가 정상적으로 생기는데

아래로 이동을하면 커서가 보이지 않습니다. 커서가 보이지 않는 상태에서 글자를 입력하고 에딧텍스트를 클릭하면 이제서야 커서가생기고 눌러젔던 입력값들이 갱신되어있습니다.

스크롤 이동후 스크롤뷰에 clearFocus(); 를 해준후 실행해봐도 에딧텍스트에 커서가 생기지않습니다. 다른 방법이 있는걸까요??

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • scrollView.post(new Runnable() {
        @Override
        public void run() {
            scroll.scrollTo(0, scroll.getBottom());
        }
    });
    

    자답입니다 코드를 수정후 해결했습니다

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)