FloatingToolbarDefaults
Contains default values used for the floating toolbar implementations.
Summary
Public functions |
||
|---|---|---|
Unit |
@ComposableCreates a |
Cmn
|
Unit |
@ComposableCreates a |
Cmn
|
FiniteAnimationSpec<T> |
@ComposableReturns a default animation spec used for |
Cmn
|
FloatingToolbarScrollBehavior |
@ExperimentalMaterial3ExpressiveApiReturns a |
Cmn
|
Modifier |
Modifier.floatingToolbarVerticalNestedScroll(This |
Cmn
|
EnterTransition |
@ComposableDefault enter transition used for |
Cmn
|
ExitTransition |
@ComposableDefault exit transition used for |
Cmn
|
FloatingToolbarColors |
Creates a |
Cmn
|
FloatingToolbarColors |
@ComposableCreates a |
Cmn
|
EnterTransition |
@ComposableDefault enter transition used for |
Cmn
|
ExitTransition |
@ComposableDefault exit transition used for |
Cmn
|
FloatingToolbarColors |
Creates a |
Cmn
|
FloatingToolbarColors |
@ComposableCreates a |
Cmn
|
Public properties |
||
|---|---|---|
Dp |
Default collapsed elevation used for |
Cmn
|
Dp |
Default collapsed elevation used for |
Cmn
|
Dp |
Default expanded elevation used for |
Cmn
|
Dp |
Default expanded elevation used for |
Cmn
|
Shape |
Default shape used for |
Cmn
|
Dp |
Default size used for |
Cmn
|
PaddingValues |
Default padding used for |
Cmn
|
Dp |
Default offset from the edge of the screen used for |
Cmn
|
Dp |
A default threshold in |
Cmn
|
Public functions
StandardFloatingActionButton
@Composable
fun StandardFloatingActionButton(
onClick: () -> Unit,
modifier: Modifier = Modifier,
shape: Shape = FloatingActionButtonDefaults.shape,
containerColor: Color = standardFloatingToolbarColors().fabContainerColor,
contentColor: Color = standardFloatingToolbarColors().fabContentColor,
interactionSource: MutableInteractionSource? = null,
content: @Composable () -> Unit
): Unit
Creates a FloatingActionButton that represents a toolbar floating action button with standard colors.
The FAB's elevation and size will be controlled by the floating toolbar, so it's applied with a Modifier.fillMaxSize.
| Parameters | |
|---|---|
onClick: () -> Unit |
called when this FAB is clicked |
modifier: Modifier = Modifier |
the |
shape: Shape = FloatingActionButtonDefaults.shape |
defines the shape of this FAB's container and shadow |
containerColor: Color = standardFloatingToolbarColors().fabContainerColor |
the color used for the background of this FAB. Defaults to the |
contentColor: Color = standardFloatingToolbarColors().fabContentColor |
the preferred color for content inside this FAB. Defaults to the |
interactionSource: MutableInteractionSource? = null |
an optional hoisted |
content: @Composable () -> Unit |
the content of this FAB, typically an |
VibrantFloatingActionButton
@Composable
fun VibrantFloatingActionButton(
onClick: () -> Unit,
modifier: Modifier = Modifier,
shape: Shape = FloatingActionButtonDefaults.shape,
containerColor: Color = vibrantFloatingToolbarColors().fabContainerColor,
contentColor: Color = vibrantFloatingToolbarColors().fabContentColor,
interactionSource: MutableInteractionSource? = null,
content: @Composable () -> Unit
): Unit
Creates a FloatingActionButton that represents a toolbar floating action button with vibrant colors.
The FAB's elevation and size will be controlled by the floating toolbar, so it's applied with a Modifier.fillMaxSize.
| Parameters | |
|---|---|
onClick: () -> Unit |
called when this FAB is clicked |
modifier: Modifier = Modifier |
the |
shape: Shape = FloatingActionButtonDefaults.shape |
defines the shape of this FAB's container and shadow |
containerColor: Color = vibrantFloatingToolbarColors().fabContainerColor |
the color used for the background of this FAB. Defaults to the |
contentColor: Color = vibrantFloatingToolbarColors().fabContentColor |
the preferred color for content inside this FAB. Defaults to the |
interactionSource: MutableInteractionSource? = null |
an optional hoisted |
content: @Composable () -> Unit |
the content of this FAB, typically an |
animationSpec
@Composable
fun <T : Any?> animationSpec(): FiniteAnimationSpec<T>
Returns a default animation spec used for HorizontalFloatingToolbars and VerticalFloatingToolbars.
exitAlwaysScrollBehavior
@ExperimentalMaterial3ExpressiveApi
@Composable
fun exitAlwaysScrollBehavior(
exitDirection: FloatingToolbarExitDirection,
state: FloatingToolbarState = rememberFloatingToolbarState(),
snapAnimationSpec: AnimationSpec<Float> = MotionSchemeKeyTokens.DefaultEffects.value(),
flingAnimationSpec: DecayAnimationSpec<Float> = rememberSplineBasedDecay()
): FloatingToolbarScrollBehavior
Returns a FloatingToolbarScrollBehavior. A floating toolbar that is set up with this FloatingToolbarScrollBehavior will immediately collapse when the content is pulled up, and will immediately appear when the content is pulled down.
| Parameters | |
|---|---|
exitDirection: FloatingToolbarExitDirection |
indicates the direction towards which the floating toolbar exits the screen |
state: FloatingToolbarState = rememberFloatingToolbarState() |
the state object to be used to control or observe the floating toolbar's scroll state. See |
snapAnimationSpec: AnimationSpec<Float> = MotionSchemeKeyTokens.DefaultEffects.value() |
an |
flingAnimationSpec: DecayAnimationSpec<Float> = rememberSplineBasedDecay() |
an |
floatingToolbarVerticalNestedScroll
fun Modifier.floatingToolbarVerticalNestedScroll(
expanded: Boolean,
onExpand: () -> Unit,
onCollapse: () -> Unit,
expandScrollDistanceThreshold: Dp = ScrollDistanceThreshold,
collapseScrollDistanceThreshold: Dp = ScrollDistanceThreshold,
reverseLayout: Boolean = false
): Modifier
This Modifier tracks vertical scroll events on the scrolling container that a floating toolbar appears above. It then calls onExpand and onCollapse to adjust the toolbar's state based on the scroll direction and distance.
Essentially, it expands the toolbar when you scroll down past a certain threshold and collapses it when you scroll back up. You can customize the expand and collapse thresholds through the expandScrollDistanceThreshold and collapseScrollDistanceThreshold.
| Parameters | |
|---|---|
expanded: Boolean |
the current expanded state of the floating toolbar |
onExpand: () -> Unit |
callback to be invoked when the toolbar should expand |
onCollapse: () -> Unit |
callback to be invoked when the toolbar should collapse |
expandScrollDistanceThreshold: Dp = ScrollDistanceThreshold |
the scroll distance (in dp) required to trigger an |
collapseScrollDistanceThreshold: Dp = ScrollDistanceThreshold |
the scroll distance (in dp) required to trigger an |
reverseLayout: Boolean = false |
indicates that the scrollable content has a reversed scrolling direction |
horizontalEnterTransition
@Composable
fun horizontalEnterTransition(expandFrom: Alignment.Horizontal): EnterTransition
Default enter transition used for HorizontalFloatingToolbar when expanding
horizontalExitTransition
@Composable
fun horizontalExitTransition(shrinkTowards: Alignment.Horizontal): ExitTransition
Default exit transition used for HorizontalFloatingToolbar when shrinking
standardFloatingToolbarColors
@Composable
fun standardFloatingToolbarColors(): FloatingToolbarColors
Creates a FloatingToolbarColors that represents the default standard colors used in the various floating toolbars.
standardFloatingToolbarColors
@Composable
fun standardFloatingToolbarColors(
toolbarContainerColor: Color = Color.Unspecified,
toolbarContentColor: Color = Color.Unspecified,
fabContainerColor: Color = Color.Unspecified,
fabContentColor: Color = Color.Unspecified
): FloatingToolbarColors
Creates a FloatingToolbarColors that represents the default standard colors used in the various floating toolbars.
| Parameters | |
|---|---|
toolbarContainerColor: Color = Color.Unspecified |
the container color for the floating toolbar. |
toolbarContentColor: Color = Color.Unspecified |
the content color for the floating toolbar. |
fabContainerColor: Color = Color.Unspecified |
the container color for an adjacent floating action button. |
fabContentColor: Color = Color.Unspecified |
the content color for an adjacent floating action button. |
verticalEnterTransition
@Composable
fun verticalEnterTransition(expandFrom: Alignment.Vertical): EnterTransition
Default enter transition used for VerticalFloatingToolbar when expanding
verticalExitTransition
@Composable
fun verticalExitTransition(shrinkTowards: Alignment.Vertical): ExitTransition
Default exit transition used for VerticalFloatingToolbar when shrinking
vibrantFloatingToolbarColors
@Composable
fun vibrantFloatingToolbarColors(): FloatingToolbarColors
Creates a FloatingToolbarColors that represents the default vibrant colors used in the various floating toolbars.
vibrantFloatingToolbarColors
@Composable
fun vibrantFloatingToolbarColors(
toolbarContainerColor: Color = Color.Unspecified,
toolbarContentColor: Color = Color.Unspecified,
fabContainerColor: Color = Color.Unspecified,
fabContentColor: Color = Color.Unspecified
): FloatingToolbarColors
Creates a FloatingToolbarColors that represents the default vibrant colors used in the various floating toolbars.
| Parameters | |
|---|---|
toolbarContainerColor: Color = Color.Unspecified |
the container color for the floating toolbar. |
toolbarContentColor: Color = Color.Unspecified |
the content color for the floating toolbar. |
fabContainerColor: Color = Color.Unspecified |
the container color for an adjacent floating action button. |
fabContentColor: Color = Color.Unspecified |
the content color for an adjacent floating action button. |
Public properties
ContainerCollapsedElevation
val ContainerCollapsedElevation: Dp
Default collapsed elevation used for HorizontalFloatingToolbar and VerticalFloatingToolbar
ContainerCollapsedElevationWithFab
val ContainerCollapsedElevationWithFab: Dp
Default collapsed elevation used for HorizontalFloatingToolbar and VerticalFloatingToolbar with FAB.
This elevation will only affect the toolbar part of the component. The FAB that is provided in a slot will have its own elevation and can be controlled independently.
ContainerExpandedElevation
val ContainerExpandedElevation: Dp
Default expanded elevation used for HorizontalFloatingToolbar and VerticalFloatingToolbar
ContainerExpandedElevationWithFab
val ContainerExpandedElevationWithFab: Dp
Default expanded elevation used for HorizontalFloatingToolbar and VerticalFloatingToolbar with FAB.
This elevation will only affect the toolbar part of the component. The FAB that is provided in a slot will have its own elevation and can be controlled independently.
ContainerShape
val ContainerShape: Shape
Default shape used for HorizontalFloatingToolbar and VerticalFloatingToolbar
ContainerSize
val ContainerSize: Dp
Default size used for HorizontalFloatingToolbar and VerticalFloatingToolbar container
ContentPadding
val ContentPadding: PaddingValues
Default padding used for HorizontalFloatingToolbar and VerticalFloatingToolbar when content are default size (24dp) icons in IconButton that meet the minimum touch target (48.dp).
ScreenOffset
val ScreenOffset: Dp
Default offset from the edge of the screen used for HorizontalFloatingToolbar and VerticalFloatingToolbar.
ScrollDistanceThreshold
val ScrollDistanceThreshold: Dp
A default threshold in Dp for the content's scrolling that defines when the toolbar should be collapsed or expanded.