我有一个textview,其中包含覆盖屏幕一半的长文本,
在这个文本视图中,我在上面的不同位置有两个单词,我必须放置一个空白的布局,这将给它一个玻璃效果。
我可以通过将textview放在framelayout中并将布局放在它上面来实现。
问题是我如何获得单词的坐标,因为文本可能被安排在不同设备的不同位置。
我想在标有白色的地方放置一个布局。请有人帮忙 感谢。
答案 0 :(得分:3)
这对你有帮助
public void getLocationOnScreen (int[] location) Since: API Level 1 Computes the coordinates of this view on the screen. The argument must be an array of two integers. After the method returns, the array contains the x and y location in that order. Parameters location an array of two integers in which to hold the coordinates
答案 1 :(得分:1)
我不确定您是否可以直接从TextView获取文本的坐标 - 您应该在TextView类源代码中搜索。但....如果你将textview渲染为位图,然后在位图内部搜索文本的坐标(如果搜索到的文本是蓝色的,应该很容易得到矩形!
答案 2 :(得分:-1)
你真正想要的是一个backgroundspan:
span = new BackgroundColorSpan(Color.WHITE);
text.setSpan(span, start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);