class Cue : Bundleable


Contains information about a specific cue, including textual content and formatting data.

Summary

Nested types

@Documented
@Retention(value = RetentionPolicy.SOURCE)
@Target(value = )
@IntDef(value = )
annotation Cue.AnchorType

The type of anchor, which may be unset.

A builder for Cue objects.

@Documented
@Retention(value = RetentionPolicy.SOURCE)
@Target(value = )
@IntDef(value = )
annotation Cue.LineType

The type of line, which may be unset.

@Documented
@Retention(value = RetentionPolicy.SOURCE)
@Target(value = )
@IntDef(value = )
annotation Cue.TextSizeType

The type of default text size for this cue, which may be unset.

@Documented
@Retention(value = RetentionPolicy.SOURCE)
@Target(value = )
@IntDef(value = )
annotation Cue.VerticalType

The type of vertical layout for this cue, which may be unset (i.e. horizontal).

Constants

const Int

Anchors the right (for horizontal positions) or bottom (for vertical positions) edge of the cue box.

const Int

Anchors the middle of the cue box.

const Int

Anchors the left (for horizontal positions) or top (for vertical positions) edge of the cue box.

const Bundleable.Creator<Cue!>!

This property is deprecated.

Use fromBundle instead.

const Float
DIMEN_UNSET = -3.4028235E38f

An unset position, width or size.

const Cue!

This property is deprecated.

There's no general need for a cue with an empty text string.

const Int

Value for lineType when line is a fractional position.

const Int

Value for lineType when line is a line number.

const Int

Text size is measured in number of pixels.

const Int

Text size is measured as a fraction of the viewport size minus the view padding.

const Int

Text size is measured as a fraction of the viewport size, ignoring the view padding

const Int
TYPE_UNSET = -2147483648

An unset anchor, line, text size or vertical type value.

const Int

Vertical left-to-right (e.g. for Mongolian).

const Int

Vertical right-to-left (e.g. for Japanese).

Public functions

Cue.Builder!

Returns a new Cue.Builder initialized with the same values as this Cue.

Boolean
equals(obj: Any?)
java-static Cue!

Restores a cue from a Bundle.

Int
Bundle!

Returns a Bundle that may contain Binder references, meaning it cannot be safely serialized to bytes.

Bundle!

This function is deprecated.

Use toSerializableBundle or toBinderBasedBundle instead.

Bundle!

Returns a Bundle that can be serialized to bytes.

Public properties

Bitmap?

The cue image, or null if this is a text cue.

Float

The bitmap height as a fraction of the of the viewport size, or DIMEN_UNSET if the bitmap should be displayed at its natural height given the bitmap dimensions and the specified size.

Float

The position of the cue box within the viewport in the direction orthogonal to the writing direction (determined by verticalType), or DIMEN_UNSET.

Int

The cue box anchor positioned by line when lineType is LINE_TYPE_FRACTION.

Int

The type of the line value.

Layout.Alignment?

The alignment of multiple lines of text relative to the longest line, or null if the alignment is undefined.

Float

The fractional position of the positionAnchor of the cue box within the viewport in the direction orthogonal to line, or DIMEN_UNSET.

Int

The cue box anchor positioned by position.

Float

The shear angle in degrees to be applied to this Cue, expressed in graphics coordinates.

Float

The size of the cue box in the writing direction specified as a fraction of the viewport size in that direction, or DIMEN_UNSET.

CharSequence?

The cue text, or null if this is an image cue.

Layout.Alignment?

The alignment of the cue text within the cue box, or null if the alignment is undefined.

Float

The default text size for this cue's text, or DIMEN_UNSET if this cue has no default text size.

Int

The default text size type for this cue's text, or TYPE_UNSET if this cue has no default text size.

Int

The vertical formatting of this Cue, or TYPE_UNSET if the cue has no vertical setting (and so should be horizontal).

Int

The fill color of the window.

Boolean

Specifies whether or not the windowColor property is set.

Constants

ANCHOR_TYPE_END

const val ANCHOR_TYPE_END = 2: Int

Anchors the right (for horizontal positions) or bottom (for vertical positions) edge of the cue box.

ANCHOR_TYPE_MIDDLE

const val ANCHOR_TYPE_MIDDLE = 1: Int

Anchors the middle of the cue box.

ANCHOR_TYPE_START

const val ANCHOR_TYPE_START = 0: Int

Anchors the left (for horizontal positions) or top (for vertical positions) edge of the cue box.

CREATOR

@UnstableApi
const val CREATORBundleable.Creator<Cue!>!

DIMEN_UNSET

const val DIMEN_UNSET = -3.4028235E38f: Float

An unset position, width or size.

EMPTY

const val EMPTYCue!

LINE_TYPE_FRACTION

const val LINE_TYPE_FRACTION = 0: Int

Value for lineType when line is a fractional position.

LINE_TYPE_NUMBER

const val LINE_TYPE_NUMBER = 1: Int

Value for lineType when line is a line number.

TEXT_SIZE_TYPE_ABSOLUTE

const val TEXT_SIZE_TYPE_ABSOLUTE = 2: Int

Text size is measured in number of pixels.

TEXT_SIZE_TYPE_FRACTIONAL

const val TEXT_SIZE_TYPE_FRACTIONAL = 0: Int

Text size is measured as a fraction of the viewport size minus the view padding.

TEXT_SIZE_TYPE_FRACTIONAL_IGNORE_PADDING

const val TEXT_SIZE_TYPE_FRACTIONAL_IGNORE_PADDING = 1: Int

Text size is measured as a fraction of the viewport size, ignoring the view padding

TYPE_UNSET

const val TYPE_UNSET = -2147483648: Int

An unset anchor, line, text size or vertical type value.

VERTICAL_TYPE_LR

const val VERTICAL_TYPE_LR = 2: Int

Vertical left-to-right (e.g. for Mongolian).

VERTICAL_TYPE_RL

const val VERTICAL_TYPE_RL = 1: Int

Vertical right-to-left (e.g. for Japanese).

Public functions

buildUpon

@UnstableApi
fun buildUpon(): Cue.Builder!

Returns a new Cue.Builder initialized with the same values as this Cue.

equals

fun equals(obj: Any?): Boolean

fromBundle

@UnstableApi
java-static fun fromBundle(bundle: Bundle!): Cue!

Restores a cue from a Bundle.

hashCode

fun hashCode(): Int

toBinderBasedBundle

@UnstableApi
fun toBinderBasedBundle(): Bundle!

Returns a Bundle that may contain Binder references, meaning it cannot be safely serialized to bytes.

The Bundle returned from this method can be safely sent between processes and parsed by older versions of the media3 library.

Use toSerializableBundle to get a Bundle that can be safely serialized.

toBundle

@UnstableApi
fun toBundle(): Bundle!

toSerializableBundle

@UnstableApi
fun toSerializableBundle(): Bundle!

Returns a Bundle that can be serialized to bytes.

Prefer the more efficient toBinderBasedBundle if the result doesn't need to be serialized.

The Bundle returned from this method must not be passed to other processes that might be using a different version of the media3 library.

Public properties

bitmap

val bitmapBitmap?

The cue image, or null if this is a text cue.

bitmapHeight

val bitmapHeightFloat

The bitmap height as a fraction of the of the viewport size, or DIMEN_UNSET if the bitmap should be displayed at its natural height given the bitmap dimensions and the specified size.

line

val lineFloat

The position of the cue box within the viewport in the direction orthogonal to the writing direction (determined by verticalType), or DIMEN_UNSET. When set, the interpretation of the value depends on the value of lineType.

The measurement direction depends on verticalType:

  • For TYPE_UNSET (i.e. horizontal), this is the vertical position relative to the top of the viewport.
  • For VERTICAL_TYPE_LR this is the horizontal position relative to the left of the viewport.
  • For VERTICAL_TYPE_RL this is the horizontal position relative to the right of the viewport.

lineAnchor

@Cue.AnchorType
val lineAnchorInt

The cue box anchor positioned by line when lineType is LINE_TYPE_FRACTION.

One of:

For the normal case of horizontal text, ANCHOR_TYPE_START, ANCHOR_TYPE_MIDDLE and ANCHOR_TYPE_END correspond to the top, middle and bottom of the cue box respectively.

lineType

@Cue.LineType
val lineTypeInt

The type of the line value.

  • LINE_TYPE_FRACTION indicates that line is a fractional position within the viewport (measured to the part of the cue box determined by lineAnchor).
  • LINE_TYPE_NUMBER indicates that line is a viewport line number. The viewport is divided into lines (each equal in size to the first line of the cue box). The cue box is positioned to align with the viewport lines as follows:
    • lineAnchor) is ignored.
    • When line is greater than or equal to 0 the first line in the cue box is aligned with a viewport line, with 0 meaning the first line of the viewport.
    • When line is negative the last line in the cue box is aligned with a viewport line, with -1 meaning the last line of the viewport.
    • For horizontal text the start and end of the viewport are the top and bottom respectively.

multiRowAlignment

val multiRowAlignmentLayout.Alignment?

The alignment of multiple lines of text relative to the longest line, or null if the alignment is undefined.

position

val positionFloat

The fractional position of the positionAnchor of the cue box within the viewport in the direction orthogonal to line, or DIMEN_UNSET.

The measurement direction depends on verticalType.

  • For TYPE_UNSET (i.e. horizontal), this is the horizontal position relative to the left of the viewport. Note that positioning is relative to the left of the viewport even in the case of right-to-left text.
  • For VERTICAL_TYPE_LR and VERTICAL_TYPE_RL (i.e. vertical), this is the vertical position relative to the top of the viewport.

positionAnchor

@Cue.AnchorType
val positionAnchorInt

The cue box anchor positioned by position. One of ANCHOR_TYPE_START, ANCHOR_TYPE_MIDDLE, ANCHOR_TYPE_END and TYPE_UNSET.

For the normal case of horizontal text, ANCHOR_TYPE_START, ANCHOR_TYPE_MIDDLE and ANCHOR_TYPE_END correspond to the left, middle and right of the cue box respectively.

shearDegrees

val shearDegreesFloat

The shear angle in degrees to be applied to this Cue, expressed in graphics coordinates. This results in a skew transform for the block along the inline progression axis.

size

val sizeFloat

The size of the cue box in the writing direction specified as a fraction of the viewport size in that direction, or DIMEN_UNSET.

text

val textCharSequence?

The cue text, or null if this is an image cue. Note the CharSequence may be decorated with styling spans.

textAlignment

val textAlignmentLayout.Alignment?

The alignment of the cue text within the cue box, or null if the alignment is undefined.

textSize

val textSizeFloat

The default text size for this cue's text, or DIMEN_UNSET if this cue has no default text size.

textSizeType

@Cue.TextSizeType
val textSizeTypeInt

The default text size type for this cue's text, or TYPE_UNSET if this cue has no default text size.

verticalType

@Cue.VerticalType
val verticalTypeInt

The vertical formatting of this Cue, or TYPE_UNSET if the cue has no vertical setting (and so should be horizontal).

windowColor

val windowColorInt

The fill color of the window.

windowColorSet

val windowColorSetBoolean

Specifies whether or not the windowColor property is set.