Skip to main content
Version: 4.60

segmented

Displays a segmented button, that can be selected. The selected index is the form layer's value.

Field Configurations

KeyTypeDescriptionDefault Value
"colorSelected"ColorThe color to use for a selected segment.null
"colorUnselected"ColorThe color to use for an unselected segment.null
"font"StringThe font to use."None, the system default is used."
"fontColor"ColorThe font color to use."#000000"
"fontColorSelected"ColorThe font color to use for a selected segment."#FFFFFF"
"fontSize"UnitSizeThe font size to use."None, the system default is used."
"imageSelected"StringThe image to use for a selected segment.null
"imageUnselected"StringThe image to use for an unselected segment.null
"scaleType"ScaleTypeDefines how an element should fit into the layer's frame.null
"values"Arrayundefinednull

Inherited

From Form Layer

Form Layer

Field Configurations

KeyTypeDescriptionDefault Value
"form"StringName of the form e.g. used to access the value of the form outside of its view.null
"formDataKey"StringDatakey used to access the value of the form layer.null
"onChanged"ArrayActions to execute when the form value is changed.null
"settingsDataKey"StringIf set, the value of the form layer will be written into the _settings table. DEPRECATED Use onChanged to save values in the database.null
"validationErrorMessage"StringMessage to display in case the input is invalid.null
"validationExpression"StringRegex to use in the validateForm action.null
"valueActionIndex"StringIndex of the value action.null
"valueActions"ArrayActions to be executed when a specified value is set e.g. hiding a layer when a checkbox is selected.null
From Base Layer

Base Layer

Field Configurations

KeyTypeDescriptionDefault Value
"_value"Value[PREVIEW] Dynamic value of the layer.null
"accessibilityAppendState"StringDefines this layer appends its state to the accessibility text.null
"accessibilityText"StringText for accessibility navigation. Can be translated.null
"actions"ActionListList of actions, which will be executed when the layer is tapped.null
"borderColor"ColorThe color of the border in hex color value.null
"borderRadius"UnitSizeThe radius applies to all corners; with a borderWidth of 0 the border is not drawn and radius is set anyway.0
"borderWidth"UnitSizeThe width of the border.0
"bottomLeftRadius"UnitSizeRadius for the bottom left corner.0
"bottomRightRadius"UnitSizeRadius for the bottom right corner.0
"classes"ArrayList of classes for layer styles.null
"conditions"ConditionsList of conditions to alter the layer state.null
"constraints"ConstraintsA list of constraints defining the position of the layer in a layout.null
"consumesKeyboard"BooleanThis layer will be used to shrink, if a keyboard is shown.null
"dataKey"StringName for assigning data to this layer.null
"focusColor"ColorThe highlight color of this layer when it is focused. Mainly used on TV. If no color is provided, the pressedColor will be used.null
"hidden"BooleanIndicates whether the layer is hidden. Default: false.false
"isAccessibilityElement"StringDefines if this layer is important for accessibility navigation. The default depends on the layer type.null
"layerRotation"NumberThe layer is rotated by the specified degree.0
"name"StringUnique name in the layout. Used for alignment or actions.null
"opacity"NumberThe opacity of the layer.1
"overInsetBottom"BooleanDetermines if this layer ignores the save space at the bottom of the device.false
"overInsetTop"BooleanDetermines if this layer ignores the save space at the top of the device.false
"pressedColor"ColorThe highlight color of this layer when it is pressed. Mainly used on TV. If no color is provided, the focusColor will be used.null
"safeArea"SafeAreaTypeObjectDetermines the safe area behaviour.null
"shadowElevation"NumberThe elevation of this layer for casting shadows.0
"state"StringThe state the layer will use as default."default"
"states"LayerStatesA list of named states that affect the appearance of the layer.null
"topLeftRadius"UnitSizeRadius for the top left corner.0
"topRightRadius"UnitSizeRadius for the top right corner.0
"touchFeedback"TouchFeedbackDetermines if the layer should show a touch feedback if touched."visible"
"trackingKey"StringDefines a key for a scroll event.null
"type"LayerTypeThe type of the layernull
"value"Value(Initial) value of the layer.null

Examples

Example 1: Create a segmented button

Goal: Create a segmented button with alternating colors.

To achieve this the following code can be used:

{
"type": "segmented",
"formDataKey": "segementedButton",
"fontSize": "20pt",
"fontColor": "#6D7070",
"fontColorSelected": "#F3F3F3",
"colorSelected": "#34A7C9",
"colorUnselected": "#2B2F2F",
"scaleType": "alignCenter",
"borderRadius": "20pt",
"borderWidth": "1pt",
"borderColor": "#f3f3f3",
"values": [
"left",
"right"
],
"value": "left",
"constraints": [
{
"type": "pos",
"anchor": "c",
"x": "50%",
"y": "30%"
},
{
"type": "size",
"height": "15%",
"width": "80%"
}
]
}

The fields colorSelected and colorUnselected set the colors for the segments depending on which one is selected.

Result:

Screencapture of the app showing the results of the sample code from Example 1.
A segmented button has been created.