【问题标题】:Touch coordinates in textview文本视图中的触摸坐标
【发布时间】:2011-12-23 12:26:23
【问题描述】:

我在文本视图上使用触摸监听器。我可以通过运动事件获取触摸坐标。

我可以通过我点击的字符坐标获取字符索引或附近吗?

例如,Hello Android

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

【问题讨论】:

    标签: android textview touch listener coordinates


    【解决方案1】:

    你必须覆盖 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;
    
    
        }
    

    【讨论】:

    • 这对我帮助很大。一直在研究如何在 textview 中突出显示文本。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多