# RemoteSplitSwitchButton

## Functions summary

|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `@https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteComposable @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/RemoteSplitSwitchButton.composable#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)( checked: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/state/RemoteBoolean, onCheckedChange: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/action/RemoteAction, toggleContentDescription: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/state/RemoteString?, onContainerClick: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/action/RemoteAction, modifier: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/modifier/RemoteModifier, enabled: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/state/RemoteBoolean, shape: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/shapes/RemoteShape, colors: https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/RemoteSplitSwitchButtonColors, contentPadding: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemotePaddingValues, secondaryLabel: (@https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable @https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteComposable https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteRowScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)?, label: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable @https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteComposable https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteRowScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` The Wear Material SplitSwitchButton offers two slots and shows the current toggle state via a switch. |

## Functions

### RemoteSplitSwitchButton

Artifact: [androidx.wear.compose.remote:remote-material3](https://developer.android.com/jetpack/androidx/releases/wear-compose-remote) [View Source](https://cs.android.com/search?q=file:androidx/wear/compose/remote/material3/RemoteSplitSwitchButton.kt+function:RemoteSplitSwitchButton)

```
@RemoteComposable
@Composable
fun RemoteSplitSwitchButton(
    checked: RemoteBoolean,
    onCheckedChange: RemoteAction,
    toggleContentDescription: RemoteString?,
    onContainerClick: RemoteAction,
    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
): Unit
```

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

The `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/RemoteSplitSwitchButton.composable#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)` is essentially a `https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteRow.composable#RemoteRow(androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.layout.RemoteArrangement.Horizontal,androidx.compose.remote.creation.compose.layout.RemoteAlignment.Vertical,kotlin.Function1)` with two split areas. The first area containing `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/package-summary#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)` and optional `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/package-summary#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)` is clickable and triggers `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/package-summary#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)`. The second area contains a switch toggle control and triggers `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/package-summary#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)`.

```kotlin
import androidx.compose.remote.creation.compose.action.valueChange
import androidx.compose.remote.creation.compose.state.MutableRemoteBoolean
import androidx.compose.remote.creation.compose.state.rs
import androidx.compose.runtime.remember
import androidx.wear.compose.remote.material3.RemoteSplitSwitchButton
import androidx.wear.compose.remote.material3.RemoteText

val checked = remember { MutableRemoteBoolean(true) }

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

| Parameters |
|---|---|
| `checked: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/state/RemoteBoolean` | `https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/state/RemoteBoolean` flag indicating whether this button is currently checked. |
| `onCheckedChange: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/action/RemoteAction` | RemoteAction to be invoked when the toggle control is clicked. |
| `toggleContentDescription: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/state/RemoteString?` | Text used by accessibility services to describe what this toggle control represents. |
| `onContainerClick: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/action/RemoteAction` | RemoteAction to be invoked when the container area is clicked. |
| `modifier: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/modifier/RemoteModifier = RemoteModifier` | `https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/modifier/RemoteModifier` to be applied to the button. |
| `enabled: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/state/RemoteBoolean = true.rb` | 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 `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/package-summary#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)` for click handling. |
| `shape: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/shapes/RemoteShape = RemoteSplitSwitchButtonDefaults.shape` | Defines the button's shape. It is recommended to use the default shape. |
| `colors: https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/RemoteSplitSwitchButtonColors = RemoteSplitSwitchButtonDefaults.splitSwitchButtonColors()` | `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/RemoteSplitSwitchButtonColors` that will be used to resolve the container and content colors for this button in different states. |
| `contentPadding: https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemotePaddingValues = RemoteSplitSwitchButtonDefaults.ContentPadding` | The spacing values to apply internally between the container and the content. |
| `secondaryLabel: (@https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable @https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteComposable https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteRowScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)? = null` | A slot for a secondary label, displayed below the `https://developer.android.com/reference/kotlin/androidx/wear/compose/remote/material3/package-summary#RemoteSplitSwitchButton(androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.state.RemoteString,androidx.compose.remote.creation.compose.action.RemoteAction,androidx.compose.remote.creation.compose.modifier.RemoteModifier,androidx.compose.remote.creation.compose.state.RemoteBoolean,androidx.compose.remote.creation.compose.shapes.RemoteShape,androidx.wear.compose.remote.material3.RemoteSplitSwitchButtonColors,androidx.compose.remote.creation.compose.layout.RemotePaddingValues,kotlin.Function1,kotlin.Function1)`. |
| `label: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable @https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteComposable https://developer.android.com/reference/kotlin/androidx/compose/remote/creation/compose/layout/RemoteRowScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | A slot for the main label content. |