---
title: "rememberScrollable2DState"
description: "Create and remember the default implementation of [Scrollable2DState] interface that contains
necessary information about the ongoing fling and provides smooth scrolling capabilities.

This is the simplest way to set up a [scrollable2D] modifier. When constructing this
[Scrollable2DState], you must provide a [consumeScrollDelta] lambda, which will be invoked
whenever scroll happens (by gesture input, by smooth scrolling, by flinging or nested scroll)
with the delta in pixels. The amount of scrolling delta consumed must be returned from this
lambda to ensure proper nested scrolling behaviour."
type: "composable"
---

<div class='type'>Composable Function</div>


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

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


```kotlin
@Composable
fun rememberScrollable2DState(consumeScrollDelta: (Offset) -> Offset): Scrollable2DState
```


Create and remember the default implementation of `Scrollable2DState` interface that contains
necessary information about the ongoing fling and provides smooth scrolling capabilities.

This is the simplest way to set up a `scrollable2D` modifier. When constructing this
`Scrollable2DState`, you must provide a `consumeScrollDelta` lambda, which will be invoked
whenever scroll happens (by gesture input, by smooth scrolling, by flinging or nested scroll)
with the delta in pixels. The amount of scrolling delta consumed must be returned from this
lambda to ensure proper nested scrolling behaviour.

#### Parameters

| | |
| --- | --- |
| consumeScrollDelta | callback invoked when drag/fling/smooth scrolling occurs. The callback receives the delta in pixels. Callers should update their state in this lambda and return the amount of delta consumed |





