Tile

public final class Tile
extends Object implements Parcelable

java.lang.Object
   ↳ android.service.quicksettings.Tile


A Tile holds the state of a tile that will be displayed in Quick Settings. A tile in Quick Settings exists as an icon with an accompanied label. It also may have content description for accessibility usability. The style and layout of the tile may change to match a given device.

Summary

Constants

int STATE_ACTIVE

This represents a tile that is currently active.

int STATE_INACTIVE

This represents a tile that is currently in a disabled state but is still interactable.

int STATE_UNAVAILABLE

An unavailable state indicates that for some reason this tile is not currently available to the user, and will have no click action.

Inherited constants

Fields

public static final Creator<Tile> CREATOR

Public methods

int describeContents()

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

PendingIntent getActivityLaunchForClick()

Gets the Activity PendingIntent to be launched when the tile is clicked.

CharSequence getContentDescription()

Gets the current content description for the tile.

Icon getIcon()

Gets the current icon for the tile.

CharSequence getLabel()

Gets the current label for the tile.

int getState()

The current state of the tile.

CharSequence getStateDescription()

Gets the current state description for the tile.

CharSequence getSubtitle()

Gets the current subtitle for the tile.

void setActivityLaunchForClick(PendingIntent pendingIntent)

Sets an Activity PendingIntent to be launched when the tile is clicked.

void setContentDescription(CharSequence contentDescription)

Sets the current content description for the tile.

void setIcon(Icon icon)

Sets the current icon for the tile.

void setLabel(CharSequence label)

Sets the current label for the tile.

void setState(int state)

Sets the current state for the tile.

void setStateDescription(CharSequence stateDescription)

Sets the current state description for the tile.

void setSubtitle(CharSequence subtitle)

Set the subtitle for the tile.

void updateTile()

Pushes the state of the Tile to Quick Settings to be displayed.

void writeToParcel(Parcel dest, int flags)

Flatten this object in to a Parcel.

Inherited methods

Constants

STATE_ACTIVE

Added in API level 24
public static final int STATE_ACTIVE

This represents a tile that is currently active. (e.g. wifi is connected, bluetooth is on, cast is casting). This is the default state.

Constant Value: 2 (0x00000002)

STATE_INACTIVE

Added in API level 24
public static final int STATE_INACTIVE

This represents a tile that is currently in a disabled state but is still interactable. A disabled state indicates that the tile is not currently active (e.g. wifi disconnected or bluetooth disabled), but is still interactable by the user to modify this state. Tiles that have boolean states should use this to represent one of their states. The tile's icon will be tinted differently to reflect this state, but still be distinct from unavailable.

Constant Value: 1 (0x00000001)

STATE_UNAVAILABLE

Added in API level 24
public static final int STATE_UNAVAILABLE

An unavailable state indicates that for some reason this tile is not currently available to the user, and will have no click action. The tile's icon will be tinted differently to reflect this state.

Constant Value: 0 (0x00000000)

Fields

CREATOR

Added in API level 24
public static final Creator<Tile> CREATOR

Public methods

describeContents

Added in API level 24
public int describeContents ()

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.

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

getActivityLaunchForClick

Added in API level 34
public PendingIntent getActivityLaunchForClick ()

Gets the Activity PendingIntent to be launched when the tile is clicked.

Returns
PendingIntent This value may be null.

getContentDescription

Added in API level 24
public CharSequence getContentDescription ()

Gets the current content description for the tile.

Returns
CharSequence

getIcon

Added in API level 24
public Icon getIcon ()

Gets the current icon for the tile.

Returns
Icon

getLabel

Added in API level 24
public CharSequence getLabel ()

Gets the current label for the tile.

Returns
CharSequence

getState

Added in API level 24
public int getState ()

The current state of the tile.

Returns
int

getStateDescription

Added in API level 30
public CharSequence getStateDescription ()

Gets the current state description for the tile.

Returns
CharSequence This value may be null.

getSubtitle

Added in API level 29
public CharSequence getSubtitle ()

Gets the current subtitle for the tile.

Returns
CharSequence This value may be null.

setActivityLaunchForClick

Added in API level 34
public void setActivityLaunchForClick (PendingIntent pendingIntent)

Sets an Activity PendingIntent to be launched when the tile is clicked. The last value set here will be launched when the user clicks in the tile, instead of forwarding the `onClick` message to the TileService. Set to null to handle the `onClick` in the `TileService` (This is the default behavior if this method is never called.)

Parameters
pendingIntent PendingIntent: a PendingIntent for an activity to be launched onclick, or null to handle the clicks in the `TileService`.

setContentDescription

Added in API level 24
public void setContentDescription (CharSequence contentDescription)

Sets the current content description for the tile. Does not take effect until updateTile() is called.

Parameters
contentDescription CharSequence: New content description to use.

setIcon

Added in API level 24
public void setIcon (Icon icon)

Sets the current icon for the tile. This icon is expected to be white on alpha, and may be tinted by the system to match it's theme. Does not take effect until updateTile() is called.

Parameters
icon Icon: New icon to show.

setLabel

Added in API level 24
public void setLabel (CharSequence label)

Sets the current label for the tile. Does not take effect until updateTile() is called.

Parameters
label CharSequence: New label to show.

setState

Added in API level 24
public void setState (int state)

Sets the current state for the tile. Does not take effect until updateTile() is called.

Parameters
state int: One of STATE_UNAVAILABLE, STATE_INACTIVE, STATE_ACTIVE

setStateDescription

Added in API level 30
public void setStateDescription (CharSequence stateDescription)

Sets the current state description for the tile. Does not take effect until updateTile() is called.

Parameters
stateDescription CharSequence: New state description to use. This value may be null.

setSubtitle

Added in API level 29
public void setSubtitle (CharSequence subtitle)

Set the subtitle for the tile. Will be displayed as the secondary label.

Parameters
subtitle CharSequence: the subtitle to show. This value may be null.

updateTile

Added in API level 24
public void updateTile ()

Pushes the state of the Tile to Quick Settings to be displayed.

writeToParcel

Added in API level 24
public void writeToParcel (Parcel dest, 
                int flags)

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.PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES