---
title: "RemoteSplitSwitchButton"
description: "The Wear Material SplitSwitchButton offers two slots and shows the current toggle state via a switch."
type: "composable"
lastmod: "2026-09-24"
---
## API Reference

### RemoteSplitSwitchButton

> Source set: Android

```kotlin
@Composable
public fun RemoteSplitSwitchButton(
    checked: RemoteBoolean,
    onCheckedChange: Action,
    toggleContentDescription: RemoteString?,
    onContainerClick: Action,
    modifier: RemoteModifier = RemoteModifier,
    enabled: RemoteBoolean = true.rb,
    shape: RemoteShape = RemoteSplitSwitchButtonDefaults.shape,
    colors: RemoteSplitSwitchButtonColors =
        RemoteSplitSwitchButtonDefaults.splitSwitchButtonColors(),
    contentPadding: RemotePaddingValues = RemoteSplitSwitchButtonDefaults.ContentPadding,
    secondaryLabel: @Composable @RemoteComposable (RemoteRowScope.() -> Unit)? = null,
    label: @Composable @RemoteComposable RemoteRowScope.() -> Unit,
)
```

The Wear Material SplitSwitchButton offers two slots and shows the current toggle state via a
switch.

The [RemoteSplitSwitchButton](/jetpack-compose/androidx.wear.compose.remote/remote-material3/composable-functions/RemoteSplitSwitchButton/api) is essentially a `RemoteRow` with two split areas. The first area
containing `label` and optional `secondaryLabel` is clickable and triggers `onContainerClick`.
The second area contains a switch toggle control and triggers `onCheckedChange`.

#### Parameters

| | |
| --- | --- |
| checked | [RemoteBoolean](/jetpack-compose/androidx.compose.remote/remote-creation-compose/classes/RemoteBoolean) flag indicating whether this button is currently checked. |
| onCheckedChange | Action to be invoked when the toggle control is clicked. |
| toggleContentDescription | Text used by accessibility services to describe what this toggle control represents. |
| onContainerClick | Action to be invoked when the container area is clicked. |
| modifier | [RemoteModifier](/jetpack-compose/androidx.compose.remote/remote-creation-compose/interfaces/RemoteModifier) to be applied to the button. |
| enabled | Controls the enabled state of the button. When `false`, this button will appear visually disabled and will not be clickable. Note that only constant values are currently supported for [enabled](/jetpack-compose/androidx.compose.remote/remote-creation-compose/properties/enabled) for click handling. |
| shape | Defines the button's shape. It is recommended to use the default shape. |
| colors | [RemoteSplitSwitchButtonColors](/jetpack-compose/androidx.wear.compose.remote/remote-material3/classes/RemoteSplitSwitchButtonColors) that will be used to resolve the container and content colors for this button in different states. |
| contentPadding | The spacing values to apply internally between the container and the content. |
| secondaryLabel | A slot for a secondary label, displayed below the [label](/jetpack-compose/androidx.compose.material3/material3/components/Label). |
| label | A slot for the main label content. |

## Code Examples

### RemoteSplitSwitchButtonSample

```kotlin
@Sampled
@Composable
@WearPreviewDevices
@PreviewWrapper(RemoteComponentPreviewWrapper::class)
fun RemoteSplitSwitchButtonSample(modifier: RemoteModifier = RemoteModifier) {
    val checked = rememberMutableRemoteBoolean(true)

    RemoteSplitSwitchButton(
        checked = checked,
        onCheckedChange = valueChange(checked, !checked),
        toggleContentDescription = "Split Switch".rs,
        onContainerClick = valueChange(checked, !checked),
        modifier = modifier,
        label = { RemoteText("Split Switch".rs) },
    )
}
```
