Освой Android играючи

Сайт Александра Климова

Шкодим

/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000

Compose: HorizontalPager/VerticalPager

10-й курс/Закрытая зона


Создано 1 января 2024, Обновлено 12 января 2024

Листать отдельные экраны свайпом по горизонтали или по вертикали позволяют компоненты HorizontalPager и VerticalPager.

Рассмотрим примеры на основе HorizontalPager. Эти примеры легко применить к VerticalPager.

HorizontalPager

Базовый пример

Создадим базовый пример. По умолчанию, страница занимает всю ширину или высоту экрана (настраивается). Нам нужно создать состояние и указать число страниц. Содержимое страницы будет состоять из одного Text. Параметр page является индексом страниц, начиная с нуля (можете переименовать в index, если вам так будет понятнее). В книгах нет страницы 0, поэтому я увеличил значение на единицу, чтобы отсчёт шёл привычным книжным образом.


@OptIn(ExperimentalFoundationApi::class)
@Composable
fun Content() {
    val pagerState = rememberPagerState(
        pageCount = { 4 }
    )

    HorizontalPager(state = pagerState) { page ->
      Text(text = "Страница ${page + 1}")
    }
}

Вы вошли на сайт, как гость.
Необходимо зарегистрироваться, чтобы прочитать статью

Дополнительное чтение

Прокручиваемая галерея картинок с котиками (HorizontalPager, Coil)

Реклама