TextStyle

@Immutable data class TextStyle
kotlin.Any
   ↳ androidx.ui.text.TextStyle

Styling configuration for a Text.

import androidx.ui.core.Text
import androidx.ui.text.TextStyle

Text(
    text = "Demo Text",
    style = TextStyle(
        color = Color.Red,
        fontSize = 16.sp,
        fontFamily = FontFamily.Monospace,
        fontWeight = FontWeight.W800,
        fontStyle = FontStyle.Italic,
        letterSpacing = 0.5.em,
        background = Color.LightGray,
        decoration = TextDecoration.Underline
    )
)

Summary

Public constructors

<init>(color: Color? = null, fontSize: TextUnit = TextUnit.Inherit, fontWeight: FontWeight? = null, fontStyle: FontStyle? = null, fontSynthesis: FontSynthesis? = null, fontFamily: FontFamily? = null, fontFeatureSettings: String? = null, letterSpacing: TextUnit = TextUnit.Inherit, baselineShift: BaselineShift? = null, textGeometricTransform: TextGeometricTransform? = null, localeList: LocaleList? = null, background: Color? = null, decoration: TextDecoration? = null, shadow: Shadow? = null)

Styling configuration for a Text.

Public methods

TextStyle
merge(other: TextStyle? = null)

Returns a new text style that is a combination of this style and the given other style.

Extension functions

From androidx.ui.material
TextStyle

TEMPORARY solution to apply an opacity for the TextStyle even if it has no color provided.

Properties

Color?

The background color for the text.

BaselineShift?

The amount by which the text is shifted up from the current baseline.

Color?

The text color.

TextDecoration?

The decorations to paint near the text (e.

FontFamily?

The font family to be used when rendering the text.

String?

The advanced typography settings provided by font.

TextUnit

The size of glyphs (in logical pixels) to use when painting the text.

FontStyle?

The typeface variant to use when drawing the letters (e.

FontSynthesis?

Whether to synthesize font weight and/or style when the requested weight or style cannot be found in the provided custom font family.

FontWeight?

The typeface thickness to use when painting the text (e.

TextUnit

The amount of space (in em) to add between each letter.

LocaleList?

The locale list used to select region-specific glyphs.

Shadow?

The shadow effect applied on the text.

TextGeometricTransform?

The geometric transformation applied the text.

Public constructors

<init>

TextStyle(
    color: Color? = null,
    fontSize: TextUnit = TextUnit.Inherit,
    fontWeight: FontWeight? = null,
    fontStyle: FontStyle? = null,
    fontSynthesis: FontSynthesis? = null,
    fontFamily: FontFamily? = null,
    fontFeatureSettings: String? = null,
    letterSpacing: TextUnit = TextUnit.Inherit,
    baselineShift: BaselineShift? = null,
    textGeometricTransform: TextGeometricTransform? = null,
    localeList: LocaleList? = null,
    background: Color? = null,
    decoration: TextDecoration? = null,
    shadow: Shadow? = null)

Styling configuration for a Text.

import androidx.ui.core.Text
import androidx.ui.text.TextStyle

Text(
    text = "Demo Text",
    style = TextStyle(
        color = Color.Red,
        fontSize = 16.sp,
        fontFamily = FontFamily.Monospace,
        fontWeight = FontWeight.W800,
        fontStyle = FontStyle.Italic,
        letterSpacing = 0.5.em,
        background = Color.LightGray,
        decoration = TextDecoration.Underline
    )
)
Parameters
color: Color? = null The text color.
fontSize: TextUnit = TextUnit.Inherit The size of glyphs (in logical pixels) to use when painting the text. This may be TextUnit.Inherit for inheriting from another TextStyle.
fontWeight: FontWeight? = null The typeface thickness to use when painting the text (e.g., bold).
fontStyle: FontStyle? = null The typeface variant to use when drawing the letters (e.g., italic).
fontSynthesis: FontSynthesis? = null Whether to synthesize font weight and/or style when the requested weight or style cannot be found in the provided custom font family.
fontFamily: FontFamily? = null The font family to be used when rendering the text.
fontFeatureSettings: String? = null The advanced typography settings provided by font. The format is the same as the CSS font-feature-settings attribute: https://www.w3.org/TR/css-fonts-3/#font-feature-settings-prop
letterSpacing: TextUnit = TextUnit.Inherit The amount of space (in em) to add between each letter.
baselineShift: BaselineShift? = null The amount by which the text is shifted up from the current baseline.
textGeometricTransform: TextGeometricTransform? = null The geometric transformation applied the text.
localeList: LocaleList? = null The locale list used to select region-specific glyphs.
background: Color? = null The background color for the text.
decoration: TextDecoration? = null The decorations to paint near the text (e.g., an underline).
shadow: Shadow? = null The shadow effect applied on the text.

See Also

Public methods

merge

fun merge(other: TextStyle? = null): TextStyle

Returns a new text style that is a combination of this style and the given other style.

other text style's null or inherit properties are replaced with the non-null properties of this text style. Another way to think of it is that the "missing" properties of the other style are filled by the properties of this style.

If the given text style is null, returns this text style.

Properties

background

val background: Color?

The background color for the text.

baselineShift

val baselineShift: BaselineShift?

The amount by which the text is shifted up from the current baseline.

color

val color: Color?

The text color.

decoration

val decoration: TextDecoration?

The decorations to paint near the text (e.g., an underline).

fontFamily

val fontFamily: FontFamily?

The font family to be used when rendering the text.

fontFeatureSettings

val fontFeatureSettings: String?

The advanced typography settings provided by font. The format is the same as the CSS font-feature-settings attribute: https://www.w3.org/TR/css-fonts-3/#font-feature-settings-prop

fontSize

val fontSize: TextUnit

The size of glyphs (in logical pixels) to use when painting the text. This may be TextUnit.Inherit for inheriting from another TextStyle.

fontStyle

val fontStyle: FontStyle?

The typeface variant to use when drawing the letters (e.g., italic).

fontSynthesis

val fontSynthesis: FontSynthesis?

Whether to synthesize font weight and/or style when the requested weight or style cannot be found in the provided custom font family.

fontWeight

val fontWeight: FontWeight?

The typeface thickness to use when painting the text (e.g., bold).

letterSpacing

val letterSpacing: TextUnit

The amount of space (in em) to add between each letter.

localeList

val localeList: LocaleList?

The locale list used to select region-specific glyphs.

shadow

val shadow: Shadow?

The shadow effect applied on the text.

textGeometricTransform

val textGeometricTransform: TextGeometricTransform?

The geometric transformation applied the text.