Most visited

Recently visited

Added in API level 1

BoringLayout

public class BoringLayout
extends Layout implements TextUtils.EllipsizeCallback

java.lang.Object
   ↳ android.text.Layout
     ↳ android.text.BoringLayout


BoringLayout是适合单行的文本的非常简单的布局实现,并且都是从左到右的字符。 你可能永远都不想自己做出其中的一个; 如果你这样做,一定isBoring(CharSequence, TextPaint)致电isBoring(CharSequence, TextPaint) ,确保文字符合标准。

该小部件使用此类来控制文本布局。 您不需要直接使用此类,除非您正在实现自己的窗口小部件或自定义显示对象,在这种情况下,我们鼓励您使用布局,而不是直接调用Canvas.drawText()

Summary

Nested classes

class BoringLayout.Metrics

 

Inherited constants

From class android.text.Layout

Public constructors

BoringLayout(CharSequence source, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, BoringLayout.Metrics metrics, boolean includepad)
BoringLayout(CharSequence source, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, BoringLayout.Metrics metrics, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth)

Public methods

void draw(Canvas c, Path highlight, Paint highlightpaint, int cursorOffset)

在指定的画布上绘制此布局,并在背景和文本之间绘制高亮度路径。

void ellipsized(int start, int end)

回调ellipsizer报告它被省略的区域。

int getBottomPadding()

返回布局底行中的下降填充的额外像素数。

int getEllipsisCount(int line)

返回要椭圆化的字符数,如果不发生省略号,则返回0。

int getEllipsisStart(int line)

将第一个字符的偏移量返回相对于该行的起始位置。

int getEllipsizedWidth()

返回此Layout的椭圆化宽度,如果没有做任何特殊处理,则返回 getWidth()

int getHeight()

返回此布局的总高度。

boolean getLineContainsTab(int line)

返回指定的行是否包含一个或多个需要专门处理的字符,如选项卡。

int getLineCount()

返回此布局中的文本行数。

int getLineDescent(int line)

返回指定行的下降(0 ... getLineCount() - 1)。

final Layout.Directions getLineDirections(int line)

返回指定行的定向运行信息。

float getLineMax(int line)

获取指定行的无符号水平范围,包括前导边距缩进,但不包括尾随空格。

int getLineStart(int line)

返回指定行首的文本偏移量(0 ... getLineCount())。

int getLineTop(int line)

返回指定行顶部的垂直位置(0 ... getLineCount())。

float getLineWidth(int line)

获取指定行的无符号水平范围,包括前导边距缩进和尾随空白。

int getParagraphDirection(int line)

返回包含在指定行的段落的初级方向性,要么1左到右线,或-1从右到左线(见 DIR_LEFT_TO_RIGHTDIR_RIGHT_TO_LEFT )。

int getTopPadding()

返回布局顶部行中(ascent padding)额外像素的(负)数。

static BoringLayout.Metrics isBoring(CharSequence text, TextPaint paint)

如果不是无聊,则返回null; 宽度,上升和下降如果无聊。

static BoringLayout.Metrics isBoring(CharSequence text, TextPaint paint, BoringLayout.Metrics metrics)

如果不是无聊,则返回null; 如果提供的Metrics对象(如果提供的对象为null,则为新对象)的宽度,上升和下降如果无聊。

static BoringLayout make(CharSequence source, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, BoringLayout.Metrics metrics, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
static BoringLayout make(CharSequence source, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, BoringLayout.Metrics metrics, boolean includepad)
BoringLayout replaceOrMake(CharSequence source, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, BoringLayout.Metrics metrics, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth)

为指定的文本返回一个BoringLayout,如果它已经合适,可能重用这个。

BoringLayout replaceOrMake(CharSequence source, TextPaint paint, int outerwidth, Layout.Alignment align, float spacingmult, float spacingadd, BoringLayout.Metrics metrics, boolean includepad)

为指定的文本返回一个BoringLayout,如果它已经合适,可能重用这个。

Inherited methods

From class android.text.Layout
From class java.lang.Object
From interface android.text.TextUtils.EllipsizeCallback

Public constructors

BoringLayout

Added in API level 1
BoringLayout (CharSequence source, 
                TextPaint paint, 
                int outerwidth, 
                Layout.Alignment align, 
                float spacingmult, 
                float spacingadd, 
                BoringLayout.Metrics metrics, 
                boolean includepad)

Parameters
source CharSequence
paint TextPaint
outerwidth int
align Layout.Alignment
spacingmult float
spacingadd float
metrics BoringLayout.Metrics
includepad boolean

BoringLayout

Added in API level 1
BoringLayout (CharSequence source, 
                TextPaint paint, 
                int outerwidth, 
                Layout.Alignment align, 
                float spacingmult, 
                float spacingadd, 
                BoringLayout.Metrics metrics, 
                boolean includepad, 
                TextUtils.TruncateAt ellipsize, 
                int ellipsizedWidth)

Parameters
source CharSequence
paint TextPaint
outerwidth int
align Layout.Alignment
spacingmult float
spacingadd float
metrics BoringLayout.Metrics
includepad boolean
ellipsize TextUtils.TruncateAt
ellipsizedWidth int

Public methods

draw

Added in API level 1
void draw (Canvas c, 
                Path highlight, 
                Paint highlightpaint, 
                int cursorOffset)

在指定的画布上绘制此布局,并在背景和文本之间绘制高亮度路径。

Parameters
c Canvas: the canvas
highlight Path: the path of the highlight or cursor; can be null
highlightpaint Paint: the paint for the highlight
cursorOffset int: the amount to temporarily translate the canvas while rendering the highlight

ellipsized

Added in API level 1
void ellipsized (int start, 
                int end)

回调ellipsizer报告它被省略的区域。

Parameters
start int
end int

getBottomPadding

Added in API level 1
int getBottomPadding ()

返回布局底行中的下降填充的额外像素数。

Returns
int

getEllipsisCount

Added in API level 1
int getEllipsisCount (int line)

返回要椭圆化的字符数,如果不发生省略号,则返回0。

Parameters
line int
Returns
int

getEllipsisStart

Added in API level 1
int getEllipsisStart (int line)

将第一个字符的偏移量返回相对于该行的起始位置。 (所以0如果行的开始是椭圆化的,而不是getLineStart()。)

Parameters
line int
Returns
int

getEllipsizedWidth

Added in API level 1
int getEllipsizedWidth ()

返回此布局的椭圆化宽度,如果没有做任何特殊处理,则返回 getWidth()

Returns
int

getHeight

Added in API level 1
int getHeight ()

返回此布局的总高度。

Returns
int

getLineContainsTab

Added in API level 1
boolean getLineContainsTab (int line)

返回指定的行是否包含一个或多个需要专门处理的字符,如选项卡。

Parameters
line int
Returns
boolean

getLineCount

Added in API level 1
int getLineCount ()

返回此布局中的文本行数。

Returns
int

getLineDescent

Added in API level 1
int getLineDescent (int line)

返回指定行的下降(0 ... getLineCount() - 1)。

Parameters
line int
Returns
int

getLineDirections

Added in API level 1
Layout.Directions getLineDirections (int line)

返回指定行的定向运行信息。 该阵列交替排列从左到右和从右到左的字符的字符数。

注意:这不足以支持双向文本,并且会改变。

Parameters
line int
Returns
Layout.Directions

getLineMax

Added in API level 1
float getLineMax (int line)

获取指定行的无符号水平范围,包括前导边距缩进,但不包括尾随空格。

Parameters
line int
Returns
float

getLineStart

Added in API level 1
int getLineStart (int line)

返回指定行首的文本偏移量(0 ... getLineCount())。 如果指定的行等于行数,则返回文本的长度。

Parameters
line int
Returns
int

getLineTop

Added in API level 1
int getLineTop (int line)

返回指定行顶部的垂直位置(0 ... getLineCount())。 如果指定的行等于行数,则返回最后一行的底部。

Parameters
line int
Returns
int

getLineWidth

Added in API level 1
float getLineWidth (int line)

获取指定行的无符号水平范围,包括前导边距缩进和尾随空白。

Parameters
line int
Returns
float

getParagraphDirection

Added in API level 1
int getParagraphDirection (int line)

返回包含在指定行的段落的初级方向性,要么1左到右线,或-1从右到左线(见 DIR_LEFT_TO_RIGHTDIR_RIGHT_TO_LEFT )。

Parameters
line int
Returns
int

getTopPadding

Added in API level 1
int getTopPadding ()

返回布局顶部行中(ascent padding)额外像素的(负)数。

Returns
int

isBoring

Added in API level 1
BoringLayout.Metrics isBoring (CharSequence text, 
                TextPaint paint)

如果不是无聊,则返回null; 宽度,上升和下降如果无聊。

Parameters
text CharSequence
paint TextPaint
Returns
BoringLayout.Metrics

isBoring

Added in API level 1
BoringLayout.Metrics isBoring (CharSequence text, 
                TextPaint paint, 
                BoringLayout.Metrics metrics)

如果不是无聊,则返回null; 如果提供的Metrics对象(如果提供的对象为null,则为新对象)的宽度,上升和下降如果无聊。

Parameters
text CharSequence
paint TextPaint
metrics BoringLayout.Metrics
Returns
BoringLayout.Metrics

make

Added in API level 1
BoringLayout make (CharSequence source, 
                TextPaint paint, 
                int outerwidth, 
                Layout.Alignment align, 
                float spacingmult, 
                float spacingadd, 
                BoringLayout.Metrics metrics, 
                boolean includepad, 
                TextUtils.TruncateAt ellipsize, 
                int ellipsizedWidth)

Parameters
source CharSequence
paint TextPaint
outerwidth int
align Layout.Alignment
spacingmult float
spacingadd float
metrics BoringLayout.Metrics
includepad boolean
ellipsize TextUtils.TruncateAt
ellipsizedWidth int
Returns
BoringLayout

make

Added in API level 1
BoringLayout make (CharSequence source, 
                TextPaint paint, 
                int outerwidth, 
                Layout.Alignment align, 
                float spacingmult, 
                float spacingadd, 
                BoringLayout.Metrics metrics, 
                boolean includepad)

Parameters
source CharSequence
paint TextPaint
outerwidth int
align Layout.Alignment
spacingmult float
spacingadd float
metrics BoringLayout.Metrics
includepad boolean
Returns
BoringLayout

replaceOrMake

Added in API level 1
BoringLayout replaceOrMake (CharSequence source, 
                TextPaint paint, 
                int outerwidth, 
                Layout.Alignment align, 
                float spacingmult, 
                float spacingadd, 
                BoringLayout.Metrics metrics, 
                boolean includepad, 
                TextUtils.TruncateAt ellipsize, 
                int ellipsizedWidth)

为指定的文本返回一个BoringLayout,如果它已经合适,可能重用这个。 调用者必须确保没有人仍在使用此布局。

Parameters
source CharSequence
paint TextPaint
outerwidth int
align Layout.Alignment
spacingmult float
spacingadd float
metrics BoringLayout.Metrics
includepad boolean
ellipsize TextUtils.TruncateAt
ellipsizedWidth int
Returns
BoringLayout

replaceOrMake

Added in API level 1
BoringLayout replaceOrMake (CharSequence source, 
                TextPaint paint, 
                int outerwidth, 
                Layout.Alignment align, 
                float spacingmult, 
                float spacingadd, 
                BoringLayout.Metrics metrics, 
                boolean includepad)

为指定的文本返回一个BoringLayout,如果它已经合适,可能重用这个。 调用者必须确保没有人仍在使用此布局。

Parameters
source CharSequence
paint TextPaint
outerwidth int
align Layout.Alignment
spacingmult float
spacingadd float
metrics BoringLayout.Metrics
includepad boolean
Returns
BoringLayout

Hooray!