DynamicLayout
public
class
DynamicLayout
extends Layout
java.lang.Object | ||
↳ | android.text.Layout | |
↳ | android.text.DynamicLayout |
DynamicLayout is a text layout that updates itself as the text is edited.
This is used by widgets to control text layout. You should not need
to use this class directly unless you are implementing your own widget
or custom display object, or need to call
Canvas.drawText()
directly.
Summary
Nested classes | |
---|---|
class |
DynamicLayout.Builder
Builder for dynamic layouts. |
Inherited constants |
---|
Inherited fields |
---|
Public constructors | |
---|---|
DynamicLayout(CharSequence base, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
This constructor is deprecated.
Use |
|
DynamicLayout(CharSequence base, CharSequence display, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
This constructor is deprecated.
Use |
|
DynamicLayout(CharSequence base, CharSequence display, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
This constructor is deprecated.
Use |
Public methods | |
---|---|
int
|
getBottomPadding()
Returns the number of extra pixels of descent padding in the bottom line of the Layout. |
int
|
getEllipsisCount(int line)
Returns the number of characters to be ellipsized away, or 0 if no ellipsis is to take place. |
int
|
getEllipsisStart(int line)
Return the offset of the first character to be ellipsized away, relative to the start of the line. |
int
|
getEllipsizedWidth()
Return the width to which this layout is ellipsized. |
LineBreakConfig
|
getLineBreakConfig()
Gets the |
boolean
|
getLineContainsTab(int line)
Returns whether the specified line contains one or more characters that need to be handled specially, like tabs. |
int
|
getLineCount()
Return the number of lines of text in this layout. |
int
|
getLineDescent(int line)
Return the descent of the specified line(0…getLineCount() - 1). |
final
Layout.Directions
|
getLineDirections(int line)
Returns the directional run information for the specified line. |
int
|
getLineStart(int line)
Return the text offset of the beginning of the specified line ( 0…getLineCount()). |
int
|
getLineTop(int line)
Return the vertical position of the top of the specified line (0…getLineCount()). |
int
|
getParagraphDirection(int line)
Returns the primary directionality of the paragraph containing the
specified line, either 1 for left-to-right lines, or -1 for right-to-left
lines (see |
int
|
getTopPadding()
Returns the (negative) number of extra pixels of ascent padding in the top line of the Layout. |
Inherited methods | |
---|---|
Public constructors
DynamicLayout
public DynamicLayout (CharSequence base, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
This constructor is deprecated.
Use Builder
instead.
Parameters | |
---|---|
base |
CharSequence : This value cannot be null . |
paint |
TextPaint : This value cannot be null . |
width |
int : Value is 0 or greater |
align |
Layout.Alignment : This value cannot be null . |
spacingmult |
float : Value is 0.0 or greater |
spacingadd |
float |
includepad |
boolean |
DynamicLayout
public DynamicLayout (CharSequence base, CharSequence display, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad)
This constructor is deprecated.
Use Builder
instead.
Parameters | |
---|---|
base |
CharSequence : This value cannot be null . |
display |
CharSequence : This value cannot be null . |
paint |
TextPaint : This value cannot be null . |
width |
int : Value is 0 or greater |
align |
Layout.Alignment : This value cannot be null . |
spacingmult |
float : Value is 0.0 or greater |
spacingadd |
float |
includepad |
boolean |
DynamicLayout
public DynamicLayout (CharSequence base, CharSequence display, TextPaint paint, int width, Layout.Alignment align, float spacingmult, float spacingadd, boolean includepad, TextUtils.TruncateAt ellipsize, int ellipsizedWidth)
This constructor is deprecated.
Use Builder
instead.
Parameters | |
---|---|
base |
CharSequence : This value cannot be null . |
display |
CharSequence : This value cannot be null . |
paint |
TextPaint : This value cannot be null . |
width |
int : Value is 0 or greater |
align |
Layout.Alignment : This value cannot be null . |
spacingmult |
float : Value is 0.0 or greater |
spacingadd |
float |
includepad |
boolean |
ellipsize |
TextUtils.TruncateAt : This value may be null . |
ellipsizedWidth |
int : Value is 0 or greater |
Public methods
getBottomPadding
public int getBottomPadding ()
Returns the number of extra pixels of descent padding in the bottom line of the Layout.
Returns | |
---|---|
int |
getEllipsisCount
public int getEllipsisCount (int line)
Returns the number of characters to be ellipsized away, or 0 if no ellipsis is to take place.
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
int |
getEllipsisStart
public int getEllipsisStart (int line)
Return the offset of the first character to be ellipsized away, relative to the start of the line. (So 0 if the beginning of the line is ellipsized, not getLineStart().)
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
int |
getEllipsizedWidth
public int getEllipsizedWidth ()
Return the width to which this layout is ellipsized.
If no ellipsize is applied, the same amount of getWidth()
is returned.
Returns | |
---|---|
int |
the amount of ellipsized width in pixels. Value is 0 or greater |
getLineBreakConfig
public LineBreakConfig getLineBreakConfig ()
Gets the LineBreakConfig
used in this DynamicLayout.
Use this only to consult the LineBreakConfig's properties and not
to change them.
Returns | |
---|---|
LineBreakConfig |
The line break config in this DynamicLayout.
This value cannot be null . |
getLineContainsTab
public boolean getLineContainsTab (int line)
Returns whether the specified line contains one or more characters that need to be handled specially, like tabs.
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
boolean |
getLineCount
public int getLineCount ()
Return the number of lines of text in this layout.
Returns | |
---|---|
int |
getLineDescent
public int getLineDescent (int line)
Return the descent of the specified line(0…getLineCount() - 1).
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
int |
getLineDirections
public final Layout.Directions getLineDirections (int line)
Returns the directional run information for the specified line. The array alternates counts of characters in left-to-right and right-to-left segments of the line.
NOTE: this is inadequate to support bidirectional text, and will change.
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
Layout.Directions |
getLineStart
public int getLineStart (int line)
Return the text offset of the beginning of the specified line ( 0…getLineCount()). If the specified line is equal to the line count, returns the length of the text.
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
int |
getLineTop
public int getLineTop (int line)
Return the vertical position of the top of the specified line (0…getLineCount()). If the specified line is equal to the line count, returns the bottom of the last line.
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
int |
getParagraphDirection
public int getParagraphDirection (int line)
Returns the primary directionality of the paragraph containing the
specified line, either 1 for left-to-right lines, or -1 for right-to-left
lines (see DIR_LEFT_TO_RIGHT
, DIR_RIGHT_TO_LEFT
).
Parameters | |
---|---|
line |
int |
Returns | |
---|---|
int |
getTopPadding
public int getTopPadding ()
Returns the (negative) number of extra pixels of ascent padding in the top line of the Layout.
Returns | |
---|---|
int |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-06-18 UTC.