# BottomAppBarState

Artifact: [androidx.compose.material3:material3](https://developer.android.com/jetpack/androidx/releases/compose-material3) [View Source](https://cs.android.com/search?q=file:androidx/compose/material3/AppBar.kt+class:androidx.compose.material3.BottomAppBarState) Common/AllAndroid/JVM
- Cmn

  ```
  interface BottomAppBarState
  ```

*** ** * ** ***

A state object that can be hoisted to control and observe the bottom app bar state. The state is read and updated by a `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarScrollBehavior` implementation.

In most cases, this state will be created via `https://developer.android.com/reference/kotlin/androidx/compose/material3/rememberBottomAppBarState.composable#rememberBottomAppBarState(kotlin.Float,kotlin.Float,kotlin.Float)`.

## Summary

| ### Public companion properties |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/runtime/saveable/Saver<https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState, *>` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#Saver()` The default `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#Saver()` implementation for `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState`. | Cmn |

| ### Public properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#collapsedFraction()` A value that represents the collapsed height percentage of the app bar. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#contentOffset()` The total offset of the content scrolled under the bottom app bar. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#heightOffset()` The bottom app bar's current height offset in pixels. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#heightOffsetLimit()` The bottom app bar's height offset limit in pixels, which represents the limit that a bottom app bar is allowed to collapse to. | Cmn |

## Public companion properties

### Saver

Cmn

```
val Saver: Saver<BottomAppBarState, *>
```

The default `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#Saver()` implementation for `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState`.

## Public properties

### collapsedFraction

Cmn

```
val collapsedFraction: Float
```

A value that represents the collapsed height percentage of the app bar.

A `0.0` represents a fully expanded bar, and `1.0` represents a fully collapsed bar (computed as `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#heightOffset()` / `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#heightOffsetLimit()`).

### contentOffset

Cmn

```
var contentOffset: Float
```

The total offset of the content scrolled under the bottom app bar.

This value is updated by a `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarScrollBehavior` whenever a nested scroll connection consumes scroll events. A common implementation would update the value to be the sum of all `https://developer.android.com/reference/kotlin/androidx/compose/ui/input/nestedscroll/NestedScrollConnection#onPostScroll(androidx.compose.ui.geometry.Offset,androidx.compose.ui.geometry.Offset,androidx.compose.ui.input.nestedscroll.NestedScrollSource)` `consumed.y` values.

### heightOffset

Cmn

```
var heightOffset: Float
```

The bottom app bar's current height offset in pixels. This height offset is applied to the fixed height of the app bar to control the displayed height when content is being scrolled.

Updates to the `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#heightOffset()` value are coerced between zero and `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#heightOffsetLimit()`.

### heightOffsetLimit

Cmn

```
var heightOffsetLimit: Float
```

The bottom app bar's height offset limit in pixels, which represents the limit that a bottom app bar is allowed to collapse to.

Use this limit to coerce the `https://developer.android.com/reference/kotlin/androidx/compose/material3/BottomAppBarState#heightOffset()` value when it's updated.