Stay organized with collections
Save and categorize content based on your preferences.
Control.StatefulBuilder
public
static
final
class
Control.StatefulBuilder
extends Object
Builder class for Control
that contains state information.
State information is passed through an instance of a ControlTemplate
and will
determine how the user can interact with the Control
. User interactions will
be sent through the method call ControlsProviderService.performControlAction
with an instance of ControlAction
to convey any potential new value.
Must be used to provide controls for ControlsProviderService.createPublisherFor
.
It provides the following defaults for non-optional parameters:
Summary
Inherited methods |
From class
java.lang.Object
Object
|
clone()
Creates and returns a copy of this object.
|
boolean
|
equals(Object obj)
Indicates whether some other object is "equal to" this one.
|
void
|
finalize()
Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.
|
final
Class<?>
|
getClass()
Returns the runtime class of this Object .
|
int
|
hashCode()
Returns a hash code value for the object.
|
final
void
|
notify()
Wakes up a single thread that is waiting on this object's
monitor.
|
final
void
|
notifyAll()
Wakes up all threads that are waiting on this object's monitor.
|
String
|
toString()
Returns a string representation of the object.
|
final
void
|
wait(long timeoutMillis, int nanos)
Causes the current thread to wait until it is awakened, typically
by being notified or interrupted, or until a
certain amount of real time has elapsed.
|
final
void
|
wait(long timeoutMillis)
Causes the current thread to wait until it is awakened, typically
by being notified or interrupted, or until a
certain amount of real time has elapsed.
|
final
void
|
wait()
Causes the current thread to wait until it is awakened, typically
by being notified or interrupted.
|
|
Public constructors
StatefulBuilder
public StatefulBuilder (Control control)
Creates a StatelessBuilder
using an existing Control
as a base.
Parameters |
control |
Control : base for the builder.
This value cannot be null . |
StatefulBuilder
public StatefulBuilder (String controlId,
PendingIntent appIntent)
Parameters |
controlId |
String : the identifier for the Control .
This value cannot be null . |
appIntent |
PendingIntent : the pending intent linking to the device Activity.
This value cannot be null . |
Public methods
setAuthRequired
public Control.StatefulBuilder setAuthRequired (boolean authRequired)
Parameters |
authRequired |
boolean : true if the control can not be interacted with until the device is
unlocked |
setControlTemplate
public Control.StatefulBuilder setControlTemplate (ControlTemplate controlTemplate)
Set the ControlTemplate
to define the primary user interaction
Devices may support a variety of user interactions, and all interactions cannot be
represented with a single ControlTemplate
. Therefore, the selected template
should be most closely aligned with what the expected primary device action will be.
Any secondary interactions can be done via the setAppIntent(android.app.PendingIntent)
.
Parameters |
controlTemplate |
ControlTemplate : instance of ControlTemplate , that defines how the
Control will behave and what interactions are
available to the user
This value cannot be null . |
setCustomColor
public Control.StatefulBuilder setCustomColor (ColorStateList customColor)
Optional color to be shown with the Control
. It is highly recommended
to let the system default the color unless the default is not suitable for the
application.
Parameters |
customColor |
ColorStateList : background color to use
This value may be null . |
setCustomIcon
public Control.StatefulBuilder setCustomIcon (Icon customIcon)
Optional icon to be shown with the Control
. It is highly recommended
to let the system default the icon unless the default icon is not suitable.
Parameters |
customIcon |
Icon : icon to show
This value may be null . |
setDeviceType
public Control.StatefulBuilder setDeviceType (int deviceType)
Parameters |
deviceType |
int : type of device represented by this Control , used to
determine the default icon and color
Value is DeviceTypes.TYPE_GENERIC_ON_OFF , DeviceTypes.TYPE_GENERIC_START_STOP , DeviceTypes.TYPE_GENERIC_OPEN_CLOSE , DeviceTypes.TYPE_GENERIC_LOCK_UNLOCK , DeviceTypes.TYPE_GENERIC_ARM_DISARM , DeviceTypes.TYPE_GENERIC_TEMP_SETTING , DeviceTypes.TYPE_GENERIC_VIEWSTREAM , DeviceTypes.TYPE_UNKNOWN , DeviceTypes.TYPE_AC_HEATER , DeviceTypes.TYPE_AC_UNIT , DeviceTypes.TYPE_AIR_FRESHENER , DeviceTypes.TYPE_AIR_PURIFIER , DeviceTypes.TYPE_COFFEE_MAKER , DeviceTypes.TYPE_DEHUMIDIFIER , DeviceTypes.TYPE_DISPLAY , DeviceTypes.TYPE_FAN , DeviceTypes.TYPE_HOOD , DeviceTypes.TYPE_HUMIDIFIER , DeviceTypes.TYPE_KETTLE , DeviceTypes.TYPE_LIGHT , DeviceTypes.TYPE_MICROWAVE , DeviceTypes.TYPE_OUTLET , DeviceTypes.TYPE_RADIATOR , DeviceTypes.TYPE_REMOTE_CONTROL , DeviceTypes.TYPE_SET_TOP , DeviceTypes.TYPE_STANDMIXER , DeviceTypes.TYPE_STYLER , DeviceTypes.TYPE_SWITCH , DeviceTypes.TYPE_TV , DeviceTypes.TYPE_WATER_HEATER , DeviceTypes.TYPE_DISHWASHER , DeviceTypes.TYPE_DRYER , DeviceTypes.TYPE_MOP , DeviceTypes.TYPE_MOWER , DeviceTypes.TYPE_MULTICOOKER , DeviceTypes.TYPE_SHOWER , DeviceTypes.TYPE_SPRINKLER , DeviceTypes.TYPE_WASHER , DeviceTypes.TYPE_VACUUM , DeviceTypes.TYPE_AWNING , DeviceTypes.TYPE_BLINDS , DeviceTypes.TYPE_CLOSET , DeviceTypes.TYPE_CURTAIN , DeviceTypes.TYPE_DOOR , DeviceTypes.TYPE_DRAWER , DeviceTypes.TYPE_GARAGE , DeviceTypes.TYPE_GATE , DeviceTypes.TYPE_PERGOLA , DeviceTypes.TYPE_SHUTTER , DeviceTypes.TYPE_WINDOW , DeviceTypes.TYPE_VALVE , DeviceTypes.TYPE_LOCK , DeviceTypes.TYPE_SECURITY_SYSTEM , DeviceTypes.TYPE_HEATER , DeviceTypes.TYPE_REFRIGERATOR , DeviceTypes.TYPE_THERMOSTAT , DeviceTypes.TYPE_CAMERA , DeviceTypes.TYPE_DOORBELL , or DeviceTypes.TYPE_ROUTINE |
setStatusText
public Control.StatefulBuilder setStatusText (CharSequence statusText)
Parameters |
statusText |
CharSequence : user-facing text description of the Control 's status,
describing its current state
This value cannot be null . |
setStructure
public Control.StatefulBuilder setStructure (CharSequence structure)
Optional top-level group to help define the Control
's location, visible to the
user. If not present, the application name will be used as the top-level group. A
structure contains zones which contains controls.
Parameters |
structure |
CharSequence : name of the structure containing the control
This value may be null . |
setSubtitle
public Control.StatefulBuilder setSubtitle (CharSequence subtitle)
Parameters |
subtitle |
CharSequence : additional information about the Control , to appear underneath
the title
This value cannot be null . |
setZone
public Control.StatefulBuilder setZone (CharSequence zone)
Optional group name to help define the Control
's location within a structure,
visible to the user. A structure contains zones which contains controls.
Parameters |
zone |
CharSequence : name of the zone containing the control
This value may be null . |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-01-23 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-01-23 UTC."],[],[]]