public class StaticLayout
extends Layout
java.lang.Object | ||
↳ | android.text.Layout | |
↳ | android.text.StaticLayout |
StaticLayout是一个布局文本,布局后不会被编辑。 对可能更改的文本使用DynamicLayout
。
这由小部件用来控制文本布局。 除非您正在实现自己的窗口小部件或自定义显示对象,否则不应直接使用此类,否则将Canvas.drawText()
直接调用Canvas.drawText()
。
Nested classes |
|
---|---|
class |
StaticLayout.Builder 生成器用于静态布局。 |
Inherited constants |
---|
From class android.text.Layout
|
Public constructors |
|
---|---|
StaticLayout(CharSequence source, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad) |
|
StaticLayout(CharSequence source, int bufstart, int bufend, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad) |
|
StaticLayout(CharSequence source, int bufstart, int bufend, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth) |
Public methods |
|
---|---|
int |
getBottomPadding() 返回布局底行中的下降填充的额外像素数。 |
int |
getEllipsisCount(int line) 返回要椭圆化的字符数,如果不发生省略号,则返回0。 |
int |
getEllipsisStart(int line) 将第一个字符的偏移量返回相对于该行的起始位置。 |
int |
getEllipsizedWidth() 返回此Layout的椭圆化宽度,或者 |
boolean |
getLineContainsTab(int line) 返回指定的行是否包含一个或多个需要专门处理的字符,如选项卡。 |
int |
getLineCount() 返回此布局中的文本行数。 |
int |
getLineDescent(int line) 返回指定行的下降(0 ... getLineCount() - 1)。 |
final Layout.Directions |
getLineDirections(int line) 返回指定行的定向运行信息。 |
int |
getLineForVertical(int vertical) 获取与指定垂直位置对应的行号。 |
int |
getLineStart(int line) 返回指定行首的文本偏移量(0 ... getLineCount())。 |
int |
getLineTop(int line) 返回指定行顶部的垂直位置(0 ... getLineCount())。 |
int |
getParagraphDirection(int line) 返回包含在指定行的段落的初级方向性,要么1左到右线,或-1从右到左线(见 |
int |
getTopPadding() 返回布局顶部行中(ascent padding)额外像素的(负)数。 |
Inherited methods |
|
---|---|
From class android.text.Layout
|
|
From class java.lang.Object
|
StaticLayout (CharSequence source, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
Parameters | |
---|---|
source |
CharSequence
|
paint |
TextPaint
|
width |
int
|
align |
Layout.Alignment
|
spacingmult |
float
|
spacingadd |
float
|
includepad |
boolean
|
StaticLayout (CharSequence source, int bufstart, int bufend, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
Parameters | |
---|---|
source |
CharSequence
|
bufstart |
int
|
bufend |
int
|
paint |
TextPaint
|
outerwidth |
int
|
align |
Layout.Alignment
|
spacingmult |
float
|
spacingadd |
float
|
includepad |
boolean
|
StaticLayout (CharSequence source, int bufstart, int bufend, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
Parameters | |
---|---|
source |
CharSequence
|
bufstart |
int
|
bufend |
int
|
paint |
TextPaint
|
outerwidth |
int
|
align |
Layout.Alignment
|
spacingmult |
float
|
spacingadd |
float
|
includepad |
boolean
|
ellipsize |
TextUtils.TruncateAt
|
ellipsizedWidth |
int
|
int getEllipsisCount (int line)
返回要椭圆化的字符数,如果不发生省略号,则返回0。
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
int |
int getEllipsisStart (int line)
将第一个字符的偏移量返回相对于该行的起始位置。 (所以0如果行的开始是椭圆化的,而不是getLineStart()。)
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
int |
int getEllipsizedWidth ()
返回此Layout的椭圆化宽度,如果没有做任何特殊处理,则返回 getWidth()
。
Returns | |
---|---|
int |
boolean getLineContainsTab (int line)
返回指定的行是否包含一个或多个需要专门处理的字符,如选项卡。
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
boolean |
int getLineDescent (int line)
返回指定行的下降(0 ... getLineCount() - 1)。
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
int |
Layout.Directions getLineDirections (int line)
返回指定行的定向运行信息。 该阵列交替排列从左到右和从右到左的字符的字符数。
注意:这不足以支持双向文本,并且会改变。
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
Layout.Directions |
int getLineForVertical (int vertical)
获取与指定垂直位置对应的行号。 如果你要求位置在0以上,你会得到0; 如果你要求在文本底部以下的位置,你会得到最后一行。
Parameters | |
---|---|
vertical |
int
|
Returns | |
---|---|
int |
int getLineStart (int line)
返回指定行首的文本偏移量(0 ... getLineCount())。 如果指定的行等于行数,则返回文本的长度。
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
int |
int getLineTop (int line)
返回指定行顶部的垂直位置(0 ... getLineCount())。 如果指定的行等于行数,则返回最后一行的底部。
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
int |
int getParagraphDirection (int line)
返回包含在指定行的段落的初级方向性,要么1左到右线,或-1从右到左线(见 DIR_LEFT_TO_RIGHT
, DIR_RIGHT_TO_LEFT
)。
Parameters | |
---|---|
line |
int
|
Returns | |
---|---|
int |
int getTopPadding ()
返回布局顶部行中(ascent padding)额外像素的(负)数。
Returns | |
---|---|
int |