EditText의 현재 커서 위치를 받아오기 위해
getSelectionStart() 함수를 사용하였습니다.
pos = mTv.getSelectionStart(); // offset of cursor
layout = mTv.getLayout();
line = layout.getLineForOffset(pos); // line number of cursor position
baseline = layout.getLineBaseline(line); // y position of line
ascent = layout.getLineAscent(line);
x = layout.getPrimaryHorizontal(pos);
y = baseline + ascent;
그런데 EditText 객체 자체에 터치 이벤트가 일어나는 걸 막기 위해
EditText를 TextView로 바꿔보려고 했는데요,
EditText를 사용할 때와 달리 위 코드의 x,y 값이 바뀌질 않네요.
질문 쓰면서 생각해보니 TextView나 EditText나 터치 이벤트 일어나는 건 마찬가지일 거 같아서
바꾸는 게 소득없는 짓인거 같긴한데;;
그래도 걍 개인적인 궁금증에 질문드립니다.
제가 selection의 개념을 정확히 모르고 있는 것 같아서요.
doc에는 selection anchor 또는 cursor offset이라고 되어있고
EditText의 해당 함수는 TextView를 상속한거라
얼핏 생각하면 같은 값을 반환할 것 같은데...
어떤 건가요?ㅜㅜ
+) getSelectionStart()와 getSelectionEnd(), 또는 selection anchor와 selection edge는 어떻게 다른가요?