参考在画布上使用drawText()绘制文本

问题描述 投票:0回答:1

我有一个画布上已经使用drawText()绘制了一些文本,是否可以获取对该文本的引用?我想使用onLongPress()手势选择该文本,并且我想需要对此文本进行引用。

android android-canvas
1个回答
1
投票

您不会对使用drawText()在画布上绘制的内容有所了解。要实现选择的文本,您必须使用Paint.measureText()来获取文本的高度和宽度,然后绘制背景以实现自定义效果文本选择(使用onTouch()长按处理)。

在画布上绘制文本时,您必须自己处理文本视图的所有行为。

另一种方法是创建TextView并将其添加到任何布局,然后使用以下代码将布局绘制到画布中

//measure the width and height of the layout(covers entire canvas)
vLayout.measure(canvas.getWidth(), canvas.getHeight());
//set the bounds of the layout.
vLayout.layout(0, 0, canvas.getWidth(), canvas.getHeight());
vLayout.draw(canvas);
© www.soinside.com 2019 - 2024. All rights reserved.