# PickerDefaults

Artifact: [androidx.wear.compose:compose-material](https://developer.android.com/jetpack/androidx/releases/wear-compose) [View Source](https://cs.android.com/search?q=file:androidx/wear/compose/material/Picker.kt+class:androidx.wear.compose.material.PickerDefaults) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.0.0)


```
object PickerDefaults
```

<br />

*** ** * ** ***

Contains the default values used by `https://developer.android.com/reference/kotlin/androidx/wear/compose/material/Picker.composable#Picker(androidx.wear.compose.material.PickerState,kotlin.String,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function1,kotlin.Function0,androidx.wear.compose.foundation.lazy.ScalingParams,androidx.compose.ui.unit.Dp,kotlin.Float,androidx.compose.ui.graphics.Color,androidx.compose.foundation.gestures.FlingBehavior,kotlin.Boolean,androidx.wear.compose.foundation.rotary.RotaryScrollableBehavior,kotlin.Function2)`

## Summary

| ### Public functions |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/wear/compose/foundation/lazy/ScalingParams` | `https://developer.android.com/reference/kotlin/androidx/wear/compose/material/PickerDefaults#defaultScalingParams(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,androidx.compose.animation.core.Easing,kotlin.Function1)( edgeScale: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, edgeAlpha: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, minElementHeight: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, maxElementHeight: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, minTransitionArea: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, maxTransitionArea: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, scaleInterpolator: https://developer.android.com/reference/kotlin/androidx/compose/animation/core/Easing, viewportVerticalOffsetResolver: (https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Constraints) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html )` Scaling params are used to determine when items start to be scaled down and alpha applied, and how much. |
| `https://developer.android.com/reference/kotlin/androidx/compose/foundation/gestures/FlingBehavior` | `@https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/wear/compose/material/PickerDefaults#flingBehavior(androidx.wear.compose.material.PickerState,androidx.compose.animation.core.DecayAnimationSpec)(state: https://developer.android.com/reference/kotlin/androidx/wear/compose/material/PickerState, decay: https://developer.android.com/reference/kotlin/androidx/compose/animation/core/DecayAnimationSpec<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html>)` Create and remember a `https://developer.android.com/reference/kotlin/androidx/compose/foundation/gestures/FlingBehavior` that will represent natural fling curve with snap to central item as the fling decays. |
| `https://developer.android.com/reference/kotlin/androidx/wear/compose/material/ScalingParams` | `[scalingParams](https://developer.android.com/reference/kotlin/androidx/wear/compose/material/PickerDefaults#scalingParams(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,androidx.compose.animation.core.Easing,kotlin.Function1))( edgeScale: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, edgeAlpha: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, minElementHeight: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, maxElementHeight: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, minTransitionArea: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, maxTransitionArea: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, scaleInterpolator: https://developer.android.com/reference/kotlin/androidx/compose/animation/core/Easing, viewportVerticalOffsetResolver: (https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Constraints) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html )` **This function is deprecated.** This overload is provided for backwards compatibility with Compose for Wear OS 1.1 and was deprecated. |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/wear/compose/material/PickerDefaults#DefaultGradientRatio()` Default Picker gradient ratio - the proportion of the Picker height allocated to each of the top and bottom gradients. |

## Public functions

### defaultScalingParams

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.2.0)

```
fun defaultScalingParams(
    edgeScale: Float = 0.45f,
    edgeAlpha: Float = 1.0f,
    minElementHeight: Float = 0.0f,
    maxElementHeight: Float = 0.0f,
    minTransitionArea: Float = 0.45f,
    maxTransitionArea: Float = 0.45f,
    scaleInterpolator: Easing = CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f),
    viewportVerticalOffsetResolver: (Constraints) -> Int = { (it.maxHeight / 5f).toInt() }
): ScalingParams
```

Scaling params are used to determine when items start to be scaled down and alpha applied, and how much. For details, see `https://developer.android.com/reference/kotlin/androidx/wear/compose/foundation/lazy/ScalingParams`

### flingBehavior

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.0.0)

```
@Composable
fun flingBehavior(
    state: PickerState,
    decay: DecayAnimationSpec<Float> = exponentialDecay()
): FlingBehavior
```

Create and remember a `https://developer.android.com/reference/kotlin/androidx/compose/foundation/gestures/FlingBehavior` that will represent natural fling curve with snap to central item as the fling decays.

| Parameters |
|---|---|
| `state: https://developer.android.com/reference/kotlin/androidx/wear/compose/material/PickerState` | the state of the `https://developer.android.com/reference/kotlin/androidx/wear/compose/material/Picker.composable#Picker(androidx.wear.compose.material.PickerState,kotlin.String,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function1,kotlin.Function0,androidx.wear.compose.foundation.lazy.ScalingParams,androidx.compose.ui.unit.Dp,kotlin.Float,androidx.compose.ui.graphics.Color,androidx.compose.foundation.gestures.FlingBehavior,kotlin.Boolean,androidx.wear.compose.foundation.rotary.RotaryScrollableBehavior,kotlin.Function2)` |
| `decay: https://developer.android.com/reference/kotlin/androidx/compose/animation/core/DecayAnimationSpec<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html> = exponentialDecay()` | the decay to use |

### scalingParams

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.0.0) Deprecated in [1.2.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.2.0)

```
fun [scalingParams](https://developer.android.com/reference/kotlin/androidx/wear/compose/material/PickerDefaults#scalingParams(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,androidx.compose.animation.core.Easing,kotlin.Function1))(
    edgeScale: Float = 0.45f,
    edgeAlpha: Float = 1.0f,
    minElementHeight: Float = 0.0f,
    maxElementHeight: Float = 0.0f,
    minTransitionArea: Float = 0.45f,
    maxTransitionArea: Float = 0.45f,
    scaleInterpolator: Easing = CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f),
    viewportVerticalOffsetResolver: (Constraints) -> Int = { (it.maxHeight / 5f).toInt() }
): ScalingParams
```

> [!CAUTION]
> **This function is deprecated.**   
> This overload is provided for backwards compatibility with Compose for Wear OS 1.1 and was deprecated. Use \[defaultScalingParams\] instead, use this instead:
>
> ```kotlin
> PickerDefaults.defaultScalingParams(edgeScale, edgeAlpha, minElementHeight, maxElementHeight, minTransitionArea, maxTransitionArea, scaleInterpolator, viewportVerticalOffsetResolver)
> ```

Scaling params are used to determine when items start to be scaled down and alpha applied, and how much. For details, see `https://developer.android.com/reference/kotlin/androidx/wear/compose/foundation/lazy/ScalingParams`

## Public properties

### DefaultGradientRatio

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.0.0)

```
val DefaultGradientRatio: Float
```

Default Picker gradient ratio - the proportion of the Picker height allocated to each of the top and bottom gradients.