2

我想知道是否可以在继承自 View 的自定义视图中以编程方式添加 textview。在这个 customView 中,我用画布绘制了一些形状,还需要放置一些文本。我尝试使用 drawText 但它没有提供足够的可能性,特别是对于文本的位置。基本上,我想把文字放在里面,并且正好放在一个圆圈的中间,同时我的文字正好适合这个圆圈(我已经知道该怎么做)。

这就是为什么我想知道是否可以通过声明并绘制它来添加一个文本视图。也许我需要使用 Inflater ?

我真的不知道什么是最好的选择,所以我需要你的帮助:)

4

2 回答 2

3

您可以为此使用 drawText(String text, float x, float y, Paint paint) 方法。像这样 :

油漆 mPaint = new Paint();

mPaint.setColor(Color.BLACK);

mPaint.setAntiAlias(true);

mPaint.setStyle(Paint.Style.FILL);

canvas.drawText("你的文字在这里", 10, 20, mPaint);

于 2016-01-28T14:39:23.100 回答
1

Instead of extending View you should extend a ViewGroup subclass like FrameLayout.

This way you can still use the canvas to draw your custom view, but also add children views to your custom drawn viewgroup.

于 2013-06-21T13:29:20.493 回答