Added in API level 1

StyleSpan


open class StyleSpan : MetricAffectingSpan, ParcelableSpan
kotlin.Any
   ↳ android.text.style.CharacterStyle
   ↳ android.text.style.MetricAffectingSpan
   ↳ android.text.style.StyleSpan

Span that allows setting the style of the text it's attached to. Possible styles are: Typeface.NORMAL, Typeface.BOLD, Typeface.ITALIC and Typeface.BOLD_ITALIC.

Note that styles are cumulative -- if both bold and italic are set in separate spans, or if the base style is bold and a span calls for italic, you get bold italic. You can't turn off a style from the base style.

For example, the StyleSpan can be used like this:

SpannableString string = new SpannableString("Bold and italic text");
  string.setSpan(new StyleSpan(Typeface.BOLD), 0, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
  string.setSpan(new StyleSpan(Typeface.ITALIC), 9, 15, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
  
Text styled bold and italic with the StyleSpan.

Summary

Public constructors

Creates a StyleSpan from a parcel.

StyleSpan(style: Int)

Creates a StyleSpan from a style.

StyleSpan(style: Int, fontWeightAdjustment: Int)

Creates a StyleSpan from a style and font weight adjustment.

Public methods
open Int

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

open Int

Returns the font weight adjustment specified by this span.

open Int

Return a special type identifier for this span class.

open Int

Returns the style constant defined in Typeface.

open String

Returns a string representation of the object.

open Unit

open Unit

Classes that extend MetricAffectingSpan implement this method to update the text formatting in a way that can change the width or height of characters.

open Unit
writeToParcel(dest: Parcel, flags: Int)

Flatten this object in to a Parcel.

Inherited functions

Public constructors

StyleSpan

Added in API level 3
StyleSpan(src: Parcel)

Creates a StyleSpan from a parcel.

Parameters
src Parcel: the parcel.
This value cannot be null.

StyleSpan

Added in API level 1
StyleSpan(style: Int)

Creates a StyleSpan from a style.

Parameters
style Int: An integer constant describing the style for this span. Examples include bold, italic, and normal. Values are constants defined in Typeface.

StyleSpan

Added in API level 33
StyleSpan(
    style: Int,
    fontWeightAdjustment: Int)

Creates a StyleSpan from a style and font weight adjustment.

Parameters
style Int: An integer constant describing the style for this span. Examples include bold, italic, and normal. Values are constants defined in Typeface.
Value is one of the following:
fontWeightAdjustment Int: An integer describing the adjustment to be made to the font weight. This is added to the value of the current weight returned by Typeface.getWeight().

Public methods

describeContents

Added in API level 3
open fun describeContents(): Int

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(android.os.Parcel,int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Return
Int a bitmask indicating the set of special object types marshaled by this Parcelable object instance.
Value is either 0 or

getFontWeightAdjustment

Added in API level 33
open fun getFontWeightAdjustment(): Int

Returns the font weight adjustment specified by this span.

This can be Configuration.FONT_WEIGHT_ADJUSTMENT_UNDEFINED. This is added to the value of the current weight returned by Typeface.getWeight().

getSpanTypeId

Added in API level 3
open fun getSpanTypeId(): Int

Return a special type identifier for this span class.

getStyle

Added in API level 1
open fun getStyle(): Int

Returns the style constant defined in Typeface.

toString

Added in API level 1
open fun toString(): String

Returns a string representation of the object.

Return
String a string representation of the object.

updateDrawState

Added in API level 1
open fun updateDrawState(ds: TextPaint!): Unit

updateMeasureState

Added in API level 1
open fun updateMeasureState(paint: TextPaint): Unit

Classes that extend MetricAffectingSpan implement this method to update the text formatting in a way that can change the width or height of characters.

Parameters
textPaint the paint used for drawing the text.
This value cannot be null.

writeToParcel

Added in API level 3
open fun writeToParcel(
    dest: Parcel,
    flags: Int
): Unit

Flatten this object in to a Parcel.

Parameters
dest Parcel: The Parcel in which the object should be written.
This value cannot be null.
flags Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.
Value is either 0 or a combination of the following: