Я хочу разработать поток адаптации с различным содержанием, используя Pager в Jetpack Compose. Потому что я хочу, чтобы пользователь ставил ей разные значения.
Бывший)
Я имею в виду, что там экраны имеют разное содержание.
Когда я читаю документ, мы видим, что содержимое внутри имеет одинаковое содержание, как показано ниже.
val pagerState = rememberPagerState()
HorizontalPager(pageCount = 10, state = pagerState) { page ->
// page content
Text(
text = "Page: $page",
)
}
Как я могу установить другое содержимое с помощью пейджера?
Должен ли я использовать блок when
и метод pagerState.scrollToPage
?
Пожалуйста, научите меня писать код.
Как вы можете видеть в документации и в коде, вы получаете число page
через лямбда.
Вам нужно будет добавить оператор if
или when
и показать содержимое на основе номера страницы. Это будет примерно так:
val pagerState = rememberPagerState()
HorizontalPager(pageCount = 10, state = pagerState) { page ->
when(page){
0 -> {
InputName()
}
1 -> {
GenderSelection()
}
2 -> {
TermsOfService()
}
}
}
Здесь InputName()
, GenderSelection()
, TermsOfService()
все разные @Composable
функции/экраны.