안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
안드로이드 초보 개발자 입니다.
항상 많은 도움 얻고 갑니다.
제가 editText 에 text 가 있을때 text 의 임의의 위치로 커서를 옮겼을때 그 커서의 위치를 얻어 오려고 합니다.
getSelectionStart() 함수를 이용해 얻어오는데 Onclick 메소드안에서 처리를 하니
두번을 클릭해야 현재 커서의 위치를 얻어오는데 한번에 얻어올 수 있는 방법이 있을까요?
예를 들어 현재는 editText 창에
' 가나다라마바 | (현재커서위치) 사아자차카 '
있고 커서를 맨끝으로 옮기면 맨끝의 위치 11 이 아닌 '바' 가 위치한 6번째의 커서값을 출력합니다.
다시 커서를 다른곳으로 옮기면 전에 수행한 맨끝의 커서값 11을 얻어옵니다.
조언 부탁드립니다.ㅠ.ㅠ
소스 첨부합니다.
안드로이드 초보 개발자 입니다.
항상 많은 도움 얻고 갑니다.
제가 editText 에 text 가 있을때 text 의 임의의 위치로 커서를 옮겼을때 그 커서의 위치를 얻어 오려고 합니다.
getSelectionStart() 함수를 이용해 얻어오는데 Onclick 메소드안에서 처리를 하니
두번을 클릭해야 현재 커서의 위치를 얻어오는데 한번에 얻어올 수 있는 방법이 있을까요?
예를 들어 현재는 editText 창에
' 가나다라마바 | (현재커서위치) 사아자차카 '
있고 커서를 맨끝으로 옮기면 맨끝의 위치 11 이 아닌 '바' 가 위치한 6번째의 커서값을 출력합니다.
다시 커서를 다른곳으로 옮기면 전에 수행한 맨끝의 커서값 11을 얻어옵니다.
조언 부탁드립니다.ㅠ.ㅠ
소스 첨부합니다.
public void onClick(View v) {
switch(v.getId()) {
case R.id.recipents_editor:
int selection = mRecipientsEditor.getSelectionStart();
Log.e("getSelectionStart","getSelectionStart::::" +selection);
break;
}
2010.06.04 10:40:16
onClick()에서는 Click이 EditView에서 처리되기 이전이라서 아마 이전 커서 위치로 나오는 것으로 보입니다.
Selection으로 커서 위치를 구하겠다면, EditView를 상속해서 TextView의 OnSelectionChanged() method를 override하는 클래스를 만드는게 가능한 방법으로 보이네요.
해보시고 되심 알려주세요.



