public class TextLayoutEx extends TextLayout
Modifier and Type | Class and Description |
---|---|
static interface |
TextLayoutEx.PagerViewBuilder |
static interface |
TextLayoutEx.TextLayoutListenerAdv |
TextLayout.DefaultLineBreaker, TextLayout.LinesIterator, TextLayout.Options
chars, height, lines, lineSpan, listener, mViewsCount, reflowedHeight, reflowedWidth, requestedHeight, viewHeight, width
Constructor and Description |
---|
TextLayoutEx(android.text.Spanned text,
android.text.TextPaint textPaint,
ContentView.Options options,
TextLayoutEx.PagerViewBuilder builder) |
Modifier and Type | Method and Description |
---|---|
void |
invalidateLines()
called when layout geometry was changed, or some handlers replaced
|
void |
invalidateMeasurement()
called when font size was changed
|
void |
onFinish(java.util.List<TextLine> lines,
int height)
method, where handles layout finish
|
boolean |
onProgress(java.util.List<TextLine> lines,
int collectedHeight,
boolean viewHeightExceed)
method where handles interaction with TextLayoutListener
when overriden - onProgress() must increments mViewsCount on every viewHeightExceed==true
|
void |
pageGeometryBegins(int pageNo,
int width,
int height,
int viewHeight,
TextLayoutEx.TextLayoutListenerAdv listener) |
void |
reset() |
void |
setSize(int width,
int height,
int viewHeight)
set size for layout where 'visible height' < available height
used for split layout to pages
|
void |
setTextSize(float size) |
protected void |
stopReflowIfNeed()
stop background thread, if running
|
boolean |
updateGeometry(int[] geometry)
called by TextLayout.reflow() immediately after viewHeightExceed == true,
|
addHighlight, draw, draw, draw, finalize, getChars, getDrawableCallbacks, getDynamicDrawablePosition, getDynamicDrawableSpanRect, getEnd, getHeight, getInvalidateListener, getLineBottom, getLineDescent, getLineEnd, getLineForPosition, getLineForVertical, getLineForVertical, getLineHeight, getLinesCount, getLinesIterator, getLineSpan, getLineStart, getLineTop, getOffsetForCoordinates, getOffsetForHorizontal, getOptions, getPaint, getPlaceholderCallbacks, getPrimaryHorizontal, getSelectionColor, getSelectionEnds, getSelectionStarts, getStart, getState, getText, getTextPaint, getWidth, invalidate, invalidateLinesFrom, invalidateMeasurementFrom, invalidateMeasurementInternal, invalidateMeasurementInternal, isLayouted, isLineAreWrap, isReflowBackgroundTaskCancelled, isReflowBackgroundTaskRunning, isReflowFinished, log_single_line, notifyTextHeightChanged, notifyTextInfoInvalidated, notifyTextReady, reflow, registerDrawable, release, removeHighlight, resetHighlight, setDrawableBounds, setHighlight, setInvalidateListener, setIsLayoutedInternal, setMaxLines, setPaint, setReflowBackgroundTaskCancelled, setReflowBackgroundTaskRunning, setReflowFinished, setSelection, setSize
public TextLayoutEx(android.text.Spanned text, android.text.TextPaint textPaint, ContentView.Options options, TextLayoutEx.PagerViewBuilder builder)
public void reset()
public boolean updateGeometry(int[] geometry)
updateGeometry
in interface ITextLayout
updateGeometry
in class TextLayout
geometry
- public boolean onProgress(java.util.List<TextLine> lines, int collectedHeight, boolean viewHeightExceed)
TextLayout
onProgress
in interface ITextLayout
onProgress
in class TextLayout
public void setSize(int width, int height, int viewHeight)
TextLayout
setSize
in class TextLayout
width
- - width of viewheight
- - height (-1 if unlimited height)viewHeight
- - 'visible height'public void setTextSize(float size)
setTextSize
in interface ContentView.OptionsChangeListener
setTextSize
in class TextLayout
public void onFinish(java.util.List<TextLine> lines, int height)
TextLayout
onFinish
in interface ITextLayout
onFinish
in class TextLayout
public void pageGeometryBegins(int pageNo, int width, int height, int viewHeight, TextLayoutEx.TextLayoutListenerAdv listener)
public void invalidateMeasurement()
TextLayout
invalidateMeasurement
in interface ContentView.OptionsChangeListener
invalidateMeasurement
in class TextLayout
public void invalidateLines()
TextLayout
invalidateLines
in interface ContentView.OptionsChangeListener
invalidateLines
in class TextLayout
protected void stopReflowIfNeed()
TextLayout
stopReflowIfNeed
in class TextLayout