java.lang.Object | |
↳ | android.text.Layout |
Known Direct Subclasses |
A base class that manages text layout in visual elements on the screen.
For text that will be edited, use a DynamicLayout
,
which will be updated as the text changes.
For text that will not change, use a StaticLayout
.
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Layout.Alignment | |||||||||||
Layout.Directions | Stores information about bidirectional (left-to-right or right-to-left) text within the layout of a line. |
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
int | DIR_LEFT_TO_RIGHT | ||||||||||
int | DIR_RIGHT_TO_LEFT |
Protected Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Subclasses of Layout use this constructor to set the display text,
width, and other standard properties.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Draw this Layout on the specified Canvas.
| |||||||||||
Draw this Layout on the specified canvas, with the highlight path drawn
between the background and the text.
| |||||||||||
Return the base alignment of this layout.
| |||||||||||
Returns the number of extra pixels of descent padding in the
bottom line of the Layout.
| |||||||||||
Fills in the specified Path with a representation of a cursor
at the specified offset.
| |||||||||||
Return how wide a layout must be in order to display the
specified text slice with one line per paragraph.
| |||||||||||
Return how wide a layout must be in order to display the
specified text with one line per paragraph.
| |||||||||||
Returns the number of characters to be ellipsized away, or 0 if
no ellipsis is to take place.
| |||||||||||
Return the offset of the first character to be ellipsized away,
relative to the start of the line.
| |||||||||||
Return the width to which this Layout is ellipsizing, or
getWidth() if it is not doing anything special. | |||||||||||
Return the total height of this layout.
| |||||||||||
Get the ascent of the text on the specified line.
| |||||||||||
Return the vertical position of the baseline of the specified line.
| |||||||||||
Return the vertical position of the bottom of the specified line.
| |||||||||||
Return the baseline for the specified line (0…getLineCount() - 1)
If bounds is not null, return the top, left, right, bottom extents
of the specified line in it.
| |||||||||||
Returns whether the specified line contains one or more
characters that need to be handled specially, like tabs
or emoji.
| |||||||||||
Return the number of lines of text in this layout.
| |||||||||||
Return the descent of the specified line(0…getLineCount() - 1).
| |||||||||||
Returns the directional run information for the specified line.
| |||||||||||
Return the text offset after the last character on the specified line.
| |||||||||||
Get the line number on which the specified text offset appears.
| |||||||||||
Get the line number corresponding to the specified vertical position.
| |||||||||||
Get the leftmost position that should be exposed for horizontal
scrolling on the specified line.
| |||||||||||
Gets the unsigned horizontal extent of the specified line, including
leading margin indent, but excluding trailing whitespace.
| |||||||||||
Get the rightmost position that should be exposed for horizontal
scrolling on the specified line.
| |||||||||||
Return the text offset of the beginning of the specified line (
0…getLineCount()).
| |||||||||||
Return the vertical position of the top of the specified line
(0…getLineCount()).
| |||||||||||
Return the text offset after the last visible character (so whitespace
is not counted) on the specified line.
| |||||||||||
Gets the unsigned horizontal extent of the specified line, including
leading margin indent and trailing whitespace.
| |||||||||||
Get the character offset on the specified line whose position is
closest to the specified horizontal position.
| |||||||||||
Return the base Paint properties for this layout.
| |||||||||||
Get the alignment of the specified paragraph, taking into account
markup attached to it.
| |||||||||||
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 ). | |||||||||||
Get the left edge of the specified paragraph, inset by left margins.
| |||||||||||
Get the right edge of the specified paragraph, inset by right margins.
| |||||||||||
Get the primary horizontal position for the specified text offset.
| |||||||||||
Get the secondary horizontal position for the specified text offset.
| |||||||||||
Fills in the specified Path with a representation of a highlight
between the specified offsets.
| |||||||||||
Return the number of units of leading that are added to each line.
| |||||||||||
Return what the text height is multiplied by to get the line height.
| |||||||||||
Return the text that is displayed by this Layout.
| |||||||||||
Returns the (negative) number of extra pixels of ascent padding in the
top line of the Layout.
| |||||||||||
Return the width of this layout.
| |||||||||||
Increase the width of this layout to the specified width.
| |||||||||||
Returns true if the character at offset is right to left (RTL).
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
|
Subclasses of Layout use this constructor to set the display text, width, and other standard properties.
text | the text to render |
---|---|
paint | the default paint for the layout. Styles can override various attributes of the paint. |
width | the wrapping width for the text. |
align | whether to left, right, or center the text. Styles can override the alignment. |
spacingMult | factor by which to scale the font size to get the default line spacing |
spacingAdd | amount to add to the default line spacing |
Draw this Layout on the specified canvas, with the highlight path drawn between the background and the text.
canvas | the canvas |
---|---|
highlight | the path of the highlight or cursor; can be null |
highlightPaint | the paint for the highlight |
cursorOffsetVertical | the amount to temporarily translate the canvas while rendering the highlight |
Return the base alignment of this layout.
Returns the number of extra pixels of descent padding in the bottom line of the Layout.
Fills in the specified Path with a representation of a cursor at the specified offset. This will often be a vertical line but can be multiple discontinuous lines in text with multiple directionalities.
Return how wide a layout must be in order to display the specified text slice with one line per paragraph.
Return how wide a layout must be in order to display the specified text with one line per paragraph.
Returns the number of characters to be ellipsized away, or 0 if no ellipsis is to take place.
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().)
Return the width to which this Layout is ellipsizing, or
getWidth()
if it is not doing anything special.
Get the ascent of the text on the specified line. The return value is negative to match the Paint.ascent() convention.
Return the vertical position of the baseline of the specified line.
Return the vertical position of the bottom of the specified line.
Return the baseline for the specified line (0…getLineCount() - 1) If bounds is not null, return the top, left, right, bottom extents of the specified line in it.
line | which line to examine (0..getLineCount() - 1) |
---|---|
bounds | Optional. If not null, it returns the extent of the line |
Returns whether the specified line contains one or more characters that need to be handled specially, like tabs or emoji.
Return the number of lines of text in this layout.
Return the descent of the specified line(0…getLineCount() - 1).
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.
Return the text offset after the last character on the specified line.
Get the line number on which the specified text offset appears. If you ask for a position before 0, you get 0; if you ask for a position beyond the end of the text, you get the last line.
Get the line number corresponding to the specified vertical position. If you ask for a position above 0, you get 0; if you ask for a position below the bottom of the text, you get the last line.
Get the leftmost position that should be exposed for horizontal scrolling on the specified line.
Gets the unsigned horizontal extent of the specified line, including leading margin indent, but excluding trailing whitespace.
Get the rightmost position that should be exposed for horizontal scrolling on the specified 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.
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.
Return the text offset after the last visible character (so whitespace is not counted) on the specified line.
Gets the unsigned horizontal extent of the specified line, including leading margin indent and trailing whitespace.
Get the character offset on the specified line whose position is closest to the specified horizontal position.
Return the base Paint properties for this layout. Do NOT change the paint, which may result in funny drawing for this layout.
Get the alignment of the specified paragraph, taking into account markup attached to it.
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
).
Get the left edge of the specified paragraph, inset by left margins.
Get the right edge of the specified paragraph, inset by right margins.
Get the primary horizontal position for the specified text offset. This is the location where a new character would be inserted in the paragraph's primary direction.
Get the secondary horizontal position for the specified text offset. This is the location where a new character would be inserted in the direction other than the paragraph's primary direction.
Fills in the specified Path with a representation of a highlight between the specified offsets. This will often be a rectangle or a potentially discontinuous set of rectangles. If the start and end are the same, the returned path is empty.
Return the number of units of leading that are added to each line.
Return what the text height is multiplied by to get the line height.
Return the text that is displayed by this Layout.
Returns the (negative) number of extra pixels of ascent padding in the top line of the Layout.
Increase the width of this layout to the specified width. Be careful to use this only when you know it is appropriate— it does not cause the text to reflow to use the full new width.
Returns true if the character at offset is right to left (RTL).
offset | the offset |
---|