使用滚动时在TextView中获取触摸坐标

时间:2013-08-15 06:16:34

标签: android scroll textview ontouchlistener

我需要计算TextView上的触摸位置并计算它的字符偏移量。 我正在使用

int line = layout.getLineForVertical(event.getY());
int characterOffset = layout.getOffsetForHorizontal(line , event.getX());
在TextView OnTouchListener

获取触摸坐标并将其转换为当前TextView中的字符偏移量。它完美地运作并且给出了被点击的角色的位置。 但是当我使用方法:textView.setMovementMethod(new ScrollingMovementMethod());来主动滚动TextView时,以前计算触摸位置的操作将不再起作用,因为它无法计算滚动线并认为触摸是协调的从TextView的开头。 我该如何解决这个问题,有没有办法获得滚动值?

1 个答案:

答案 0 :(得分:0)

使用

View.getScrollX() and/or View.getScrollY()