VerticalScroller не работает внутри виджета Column - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь встроить VerticalScroller в виджет столбца, но поведение прокрутки не работает.

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContent {
        Container(alignment = Alignment.TopCenter) {
            Column {
                Padding(padding = 16.dp) {
                    Text(text = "Names")
                }
                VerticalScroller {
                    Column(crossAxisAlignment = CrossAxisAlignment.Center) {
                        (1..100).forEach {
                            Padding(padding = 8.dp) {
                                Text(text = "Name $it")
                            }
                        }
                    }
                }
            }
        }

    }
}

1 Ответ

1 голос
/ 06 ноября 2019

Для встраивания VerticalScroller в столбец необходимо использовать FlexColumn, а затем встраивать VerticalScroller в flexible функцию. Для «Списка имен» Text используйте inflexible

Что такое FlexColumn?

Композитный объект, который помещает свои дочерние элементы в вертикальную последовательность, назначая дочерние элементывысоты в соответствии с их весами изгиба.

Для достижения режима прокрутки вам нужно попробовать код ниже

 Container(alignment = Alignment.TopCenter) {
        FlexColumn {
            inflexible {
                Padding(padding = 16.dp) {
                    Text(text = "Names List")
                }
            }
            flexible(flex = 1f) {
                VerticalScroller {
                    Column {
                        (1..100).forEach {
                            Padding(padding = 8.dp) {
                                Text(text = "Name $it")
                            }
                        }
                    }
                }
            }
        }
    }

Проверьте ниже gif enter image description here

...