Класс ScrollView
Класс ScrollView
наследует
FrameLayout
и держит ровно один дочерний элемент.
Обычно внутрь кладут
LinearLayout
или один
TextView
с длинным текстом.
Прокрутка вертикальная.
Для длинных списков берут
RecyclerView.
Синтаксис
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- one child -->
</ScrollView>
Параметры
| Параметр | Описание |
|---|---|
android:layout_width |
Ширина области прокрутки. |
android:layout_height |
Высота области прокрутки. |
android:fillViewport |
Если true, дочерний элемент растягивается
на высоту ScrollView, когда контент короткий.
|
android:scrollbars |
Показывать ли полосу прокрутки, например vertical.
|
Пример
Давайте обернём длинный TextView:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:text="abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde abcde" />
</ScrollView>
На экране видна часть текста, остальное откроется вертикальной прокруткой.
Пример
Давайте положим столбец из двух TextView в ScrollView:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="abcde" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="12345" />
</LinearLayout>
</ScrollView>
На экране оба текста будут в одном прокручиваемом столбце.
Смотрите также
-
класс
RecyclerView,
длинные списки с переиспользованием View -
класс
LinearLayout,
частый единственный дочерний элемент ScrollView -
метод
verticalScroll,
прокрутка в Compose -
класс
TextView,
который кладут внутрь для длинного текста