lightbulb_outline Help shape the future of the Google Play Console, Android Studio, and Firebase. Start survey

StateSet

public class StateSet
extends Object

java.lang.Object
   ↳ android.util.StateSet


State sets are arrays of positive ints where each element represents the state of a View (e.g. focused, selected, visible, etc.). A View may be in one or more of those states. A state spec is an array of signed ints where each element represents a required (if positive) or an undesired (if negative) View state. Utils dealing with state sets. In theory we could encapsulate the state set and state spec arrays and not have static methods here but there is some concern about performance since these methods are called during view drawing.

Summary

Fields

public static final int[] NOTHING

A state set that does not contain any valid states.

public static final int[] WILD_CARD

A state specification that will be matched by all StateSets.

Public methods

static String dump(int[] states)
static boolean isWildCard(int[] stateSetOrSpec)

Return whether the stateSetOrSpec is matched by all StateSets.

static boolean stateSetMatches(int[] stateSpec, int[] stateSet)

Return whether the stateSet matches the desired stateSpec.

static boolean stateSetMatches(int[] stateSpec, int state)

Return whether the state matches the desired stateSpec.

static int[] trimStateSet(int[] states, int newSize)

Inherited methods

Fields

NOTHING

added in API level 11
public static final int[] NOTHING

A state set that does not contain any valid states.

WILD_CARD

added in API level 1
public static final int[] WILD_CARD

A state specification that will be matched by all StateSets.

Public methods

dump

added in API level 1
public static String dump (int[] states)

Parameters
states int

Returns
String

isWildCard

added in API level 1
public static boolean isWildCard (int[] stateSetOrSpec)

Return whether the stateSetOrSpec is matched by all StateSets.

Parameters
stateSetOrSpec int: a state set or state spec.

Returns
boolean

stateSetMatches

added in API level 1
public static boolean stateSetMatches (int[] stateSpec, 
                int[] stateSet)

Return whether the stateSet matches the desired stateSpec.

Parameters
stateSpec int: an array of required (if positive) or prohibited (if negative) View states.

stateSet int: an array of View states

Returns
boolean

stateSetMatches

added in API level 1
public static boolean stateSetMatches (int[] stateSpec, 
                int state)

Return whether the state matches the desired stateSpec.

Parameters
stateSpec int: an array of required (if positive) or prohibited (if negative) View states.

state int: a View state

Returns
boolean

trimStateSet

added in API level 1
public static int[] trimStateSet (int[] states, 
                int newSize)

Parameters
states int

newSize int

Returns
int[]