I've seen many posts dealing with similar problems but none of them worked for me. In Canvas
, I have a rectangle of size, let's say, 200px by 200px, and I want to write text in this rectangle. The text doesn't need to fill the entire rectangle, but the important thing is that there should automatically be a line break when it reaches the end of the rectangle. How can I do this in Android?
質問する
10071 次
4 に答える
32
StaticLayoutを使用できます。
RectF rect = new RectF(....)
StaticLayout sl = new StaticLayout("This is my text that must fit to a rectangle", textPaint, (int)rect.width(), Layout.Alignment.ALIGN_CENTER, 1, 1, false);
canvas.save();
canvas.translate(rect.left, rect.top);
sl.draw(canvas);
canvas.restore();
于 2012-10-16T18:21:00.967 に答える
3
テキストを測定してから、コードで自分で分割する必要があります。 Paint.measureTextが必要です。
于 2012-10-16T18:11:25.943 に答える
0
キャンバスの上にテキストフィールドを使用して、そのテキストフィールドで複数行を有効にすることができますか?テキストフィールドの改行は無料です;-)
于 2012-10-16T18:18:03.990 に答える