触摸textview中的坐标

时间:2011-12-23 12:26:23

标签: android textview touch listener coordinates

我在文本视图上使用触控侦听器。我可以通过动作事件获得触摸坐标。

我可以获取字符索引或靠近我点击的字符坐标。

例如,Hello Android

这是我的文字。现在我可以得到x y坐标,但是当我触摸它时,我可以得到字符索引,比如A

1 个答案:

答案 0 :(得分:12)

您必须覆盖onTouch()尝试使用以下

public boolean onTouch(View v, MotionEvent event) {
        // TODO Auto-generated method stub
         Layout layout = ((TextView) v).getLayout();
            int x = (int)event.getX();
            int y = (int)event.getY();
            if (layout!=null){
                int line = layout.getLineForVertical(y);
                int characterOffset = layout.getOffsetForHorizontal(line, x);
                Log.i("index", ""+characterOffset);
                }
            return true;


    }