Class HeadingSpan
java.lang.Object
icyllis.modernui.text.style.CharacterStyle
icyllis.modernui.text.style.MetricAffectingSpan
icyllis.modernui.markflow.core.style.HeadingSpan
- All Implemented Interfaces:
LeadingMarginSpan,LineHeightSpan,ParagraphStyle,UpdateAppearance,UpdateLayout,WrapTogetherSpan,Cloneable
-
Nested Class Summary
Nested classes/interfaces inherited from interface icyllis.modernui.text.style.LeadingMarginSpan
LeadingMarginSpan.LeadingMarginSpan2, LeadingMarginSpan.Standard -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidchooseHeight(CharSequence text, int start, int end, int spanstartv, int lineHeight, FontMetricsInt fm, TextPaint paint) Classes that implement this should define how the height is being calculated.voiddrawMargin(Canvas c, TextPaint p, int left, int right, int dir, int top, int baseline, int bottom, Spanned text, int start, int end, boolean first, Layout layout) Called when drawing the margin.voidupdateMeasureState(TextPaint paint) Classes that extendMetricAffectingSpanimplement this method to update the text formatting in a way that can change the width or height of characters.Methods inherited from class icyllis.modernui.text.style.MetricAffectingSpan
updateDrawStateMethods inherited from class icyllis.modernui.text.style.CharacterStyle
clone, wrapMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface icyllis.modernui.text.style.LeadingMarginSpan
drawLeadingMargin, getLeadingMargin, getLeadingMargin, getTrailingMargin
-
Constructor Details
-
HeadingSpan
-
-
Method Details
-
updateMeasureState
Description copied from class:MetricAffectingSpanClasses that extendMetricAffectingSpanimplement this method to update the text formatting in a way that can change the width or height of characters.- Specified by:
updateMeasureStatein classMetricAffectingSpan- Parameters:
paint- the paint used for measuring the text
-
drawMargin
public void drawMargin(@NonNull Canvas c, @NonNull TextPaint p, int left, int right, int dir, int top, int baseline, int bottom, @NonNull Spanned text, int start, int end, boolean first, @NonNull Layout layout) Description copied from interface:LeadingMarginSpanCalled when drawing the margin.The default implementation is to call
LeadingMarginSpan.drawLeadingMargin(icyllis.modernui.graphics.Canvas, icyllis.modernui.text.TextPaint, int, int, int, int, int, java.lang.CharSequence, int, int, boolean, icyllis.modernui.text.Layout), where x is either left or right, depending on dir. This method allows to draw the trailing margin at the same time, not just the leading margin.Added by Modern UI.
- Specified by:
drawMarginin interfaceLeadingMarginSpan- Parameters:
c- the canvasp- the paint. This should be left unchanged on exit.left- the current left position of the marginright- the current right position of the margindir- the base direction of the paragraph; if negative, the margin is to the right of the text, otherwise it is to the left.top- the top of the linebaseline- the baseline of the linebottom- the bottom of the linetext- the textstart- the start of the lineend- the end of the linefirst- true if this is the first line of its paragraphlayout- the layout containing this line
-
chooseHeight
public void chooseHeight(CharSequence text, int start, int end, int spanstartv, int lineHeight, FontMetricsInt fm, TextPaint paint) Description copied from interface:LineHeightSpanClasses that implement this should define how the height is being calculated.- Specified by:
chooseHeightin interfaceLineHeightSpan- Parameters:
text- the textstart- the start of the lineend- the end of the linespanstartv- the start of the spanlineHeight- the line heightfm- font metrics of the paint, in integerspaint- the paint
-