Виджет SliverVisibility
Виджет SliverVisibility принимает visible и sliver.
Синтаксис
SliverVisibility(visible: true, sliver: SliverList.list(children: []))
Параметры
| Параметр | Описание |
|---|---|
visible |
Показывать sliver или оставить место пустым. |
sliver |
Целевой sliver. |
maintainState |
Хранить state скрытого sliver. |
Пример
Давайте скрыть блок:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CustomScrollView(
slivers: [
SliverVisibility(
visible: false,
sliver: SliverList.list(children: [Text('abcde')]),
),
SliverList.list(children: [Text('12345')]),
],
),
),
);
}
На экране видна только вторая строка.
Пример
Давайте показать оба блока:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: CustomScrollView(
slivers: [
SliverVisibility(
visible: true,
sliver: SliverList.list(children: [Text('abcde')]),
),
SliverList.list(children: [Text('12345')]),
],
),
),
);
}
На экране обе подписи в прокрутке.
Смотрите также
-
виджет
SliverOpacity,
который часто ставят рядом в прокручиваемых экранах -
виджет
SliverSafeArea,
который дополняет работу с прокруткой -
виджет
SliverFillViewport,
который помогает собрать сложный список -
виджет
SliverOverlapAbsorber,
который задаёт поведение или данные прокрутки