我需要计算TextView上的触摸位置并计算它的字符偏移量。 我正在使用
int line = layout.getLineForVertical(event.getY());
int characterOffset = layout.getOffsetForHorizontal(line , event.getX());
在TextView OnTouchListener
中获取触摸坐标并将其转换为当前TextView
中的字符偏移量。它完美地运作并且给出了被点击的角色的位置。
但是当我使用方法:textView.setMovementMethod(new ScrollingMovementMethod());
来主动滚动TextView
时,以前计算触摸位置的操作将不再起作用,因为它无法计算滚动线并认为触摸是协调的从TextView的开头。
我该如何解决这个问题,有没有办法获得滚动值?
答案 0 :(得分:0)
使用
View.getScrollX() and/or View.getScrollY()