5

I have an Add Shopping List item Jetpack Compose screen which contains several TextField inputs and an image container at the bottom. The screen overflows at the bottom and is cut off. How can I scroll the screen?

3 Answers 3

12

EDIT: October 2023

At some point along the way this was changed and the old solution does not work anymore. The solution to this question is now:

val scrollState = rememberScrollState() ... Column( // or whatever your parent composable is modifier = Modifier .verticalScroll(state = scrollState) ) { ... } 

Old solution

Add Modifier.scrollable(..) to the container that you wish to make scrollable. Code would be something like this:

val scrollState = rememberScrollState() ... Box( // or whatever your parent composable is modifier = Modifier .scrollable(state = scrollState, orientation = Orientation.Vertical) ) { ... } 

Of course, there are other Modifier methods for making composables scrollable that might fit better for your case.

Sign up to request clarification or add additional context in comments.

3 Comments

this does not work for me with compose version 1.3.3
same here not working
Box(modifier = Modifier.verticalScroll(rememberScrollState())) { ... also works
2

If the approved answer is not working try like below

val scrollState = rememberScrollState() Column( modifier = Modifier.verticalScroll(state = scrollState) ) { ... } 

Do not forget to apply it to your parent composable

Comments

1

You can use the modifier verticalScroll on your container to achieve this.

Column( modifier = Modifier.verticalScroll(state = rememberScrollState()) ) { ... } 

1 Comment

Thank you for contributing to the Stack Overflow community. This may be a correct answer, but it’d be really useful to provide additional explanation of your code so developers can understand your reasoning. This is especially useful for new developers who aren’t as familiar with the syntax or struggling to understand the concepts. Would you kindly edit your answer to include additional details for the benefit of the community?

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.