---
title: "BottomAppBarState"
description: "A state object that can be hoisted to control and observe the bottom app bar state. The state is
read and updated by a [BottomAppBarScrollBehavior] implementation.

In most cases, this state will be created via [rememberBottomAppBarState]."
type: "interface"
---

<div class='type'>Interface</div>


<a id='references'></a>

<div class='sourceset sourceset-common'>Common</div>



```kotlin
@ExperimentalMaterial3Api
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 `BottomAppBarScrollBehavior` implementation.

In most cases, this state will be created via `rememberBottomAppBarState`.


## Properties

<div class='sourceset sourceset-common'>Common</div>


```kotlin
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 `heightOffset` value when it's updated.



<div class='sourceset sourceset-common'>Common</div>


```kotlin
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 `heightOffset` value are coerced between zero and `heightOffsetLimit`.



<div class='sourceset sourceset-common'>Common</div>


```kotlin
var contentOffset: Float
```


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

This value is updated by a `BottomAppBarScrollBehavior` whenever a nested scroll connection
consumes scroll events. A common implementation would update the value to be the sum of all
`NestedScrollConnection.onPostScroll` `consumed.y` values.



<div class='sourceset sourceset-common'>Common</div>


```kotlin
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 `heightOffset` / `heightOffsetLimit`).




