{% setvar book_path %}/reference/androidx/_book.yaml{% endsetvar %} {% include "_shared/_reference-head-tags.html" %}

TopAppBarScrollBehavior

@ExperimentalMaterial3Api
public interface TopAppBarScrollBehavior


A TopAppBarScrollBehavior defines how an app bar should behave when the content under it is scrolled.

See also
pinnedScrollBehavior
enterAlwaysScrollBehavior
exitUntilCollapsedScrollBehavior

Summary

Public methods

abstract DecayAnimationSpec<@NonNull Float>

An optional DecayAnimationSpec that defined how to fling the top app bar when the user flings the app bar itself, or the content below it.

abstract @NonNull NestedScrollConnection

A NestedScrollConnection that should be attached to a Modifier.nestedScroll in order to keep track of the scroll events.

abstract AnimationSpec<@NonNull Float>

An optional AnimationSpec that defines how the top app bar snaps to either fully collapsed or fully extended state when a fling or a drag scrolled it into an intermediate position.

abstract @NonNull TopAppBarState

A TopAppBarState that is attached to this behavior and is read and updated when scrolling happens.

abstract boolean

Indicates whether the top app bar is pinned.

Public methods

getFlingAnimationSpec

abstract DecayAnimationSpec<@NonNull FloatgetFlingAnimationSpec()

An optional DecayAnimationSpec that defined how to fling the top app bar when the user flings the app bar itself, or the content below it.

getNestedScrollConnection

abstract @NonNull NestedScrollConnection getNestedScrollConnection()

A NestedScrollConnection that should be attached to a Modifier.nestedScroll in order to keep track of the scroll events.

getSnapAnimationSpec

abstract AnimationSpec<@NonNull FloatgetSnapAnimationSpec()

An optional AnimationSpec that defines how the top app bar snaps to either fully collapsed or fully extended state when a fling or a drag scrolled it into an intermediate position.

getState

abstract @NonNull TopAppBarState getState()

A TopAppBarState that is attached to this behavior and is read and updated when scrolling happens.

isPinned

abstract boolean isPinned()

Indicates whether the top app bar is pinned.

A pinned app bar will stay fixed in place when content is scrolled and will not react to any drag gestures.