Android TextView获取某个字符的坐标

TextView是通过Layout来管理字符的位置

/**
     * 获取TextView某一个字符的坐标
     *
     * @parms tv
     * @parms index 字符下标
     * @return 返回的是相对坐标
     */
    private int getTextViewSelectionBottomY(TextView tv,int index) {
        Layout layout = tv.getLayout();
        Rect bound = new Rect();
        int line = layout.getLineForOffset(index);
        layout.getLineBounds(line, bound);
        int yAxisBottom = bound.bottom;//字符底部y坐标
//        int yAxisTop = bound.top;//字符顶部y坐标
//        float xAxisLeft = layout.getPrimaryHorizontal(index);//字符左边x坐标
//        float xAxisRight = layout.getSecondaryHorizontal(index);//字符右边x坐标

        return yAxisBottom;

    }

注意获取到的这个坐标是TextView的相对坐标。

我们可以通过TextView.getScrollY()获取textview展示的内容最上面一行的坐标,这样的话我们就可以算出当前字符串的在屏幕上的坐标位置。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 7,396评论 0 17
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 179,392评论 25 708
  • 《裕语言》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 28,815评论 5 20
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 15,856评论 4 61
  • 实施时间:20180129-20180508 目的:养成每天读书的习惯,读书笔记不做要求 第一本《书都不会读,你还...
    xunlong阅读 298评论 0 0

友情链接更多精彩内容