Beagle v1.5 não é mais mantida ativamente. A versão documentada que você está visualizando pode conter funcionalidades depreciadas. Para obter as funcionalidades mais recentes, consulte a nossa última versão .
O componente PageView
é um container especializado em apresentar páginas que são exibidas na horizontal e podem conter um indicador de páginas. Essas páginas podem ser qualquer objeto server-driven.
O Page View se refere ao seu tamanho quando visualizado em dispositivos Mobile (Android e iOS). O tamanho dele é determinado pelo elemento pai em que está contido, ou seja, a largura (width) e a altura (height) será definida pelo componente pai.
Por exemplo, um PageView
pode ser declarado dentro de um Container e sua largura e altura são responsáveis por determinar o tamanho do Page View.
A sua estrutura é representada como mostrado abaixo:
Atributo | Tipo | Obrigatório | Definição |
---|---|---|---|
children | List<ServerDrivenComponent> | ✓ | Define a lista de componentes visuais (server-driven) contidos naPageView< |
context | ContextData | Éo contexto contido neste Widget | |
onPageChange | List<Action> | Lista de ação que é executada quando a pagina selecionada é alterada | |
currentPage | Int | Identificador de qual pagina está selecionada | |
showArrow | Boolean | Esse atributo é especifico para plataforma web. Ele habilita setas para mudança de página. |
No exemplo abaixo segue um PageView contendo três páginas onde cada uma delas tem um Text que é definido por Contexto. Toda vez que há mudança de página o contexto é redefinido.
Screen(
child = Container(
context = ContextData("currentTab", 0),
children = listOf(
TabBar(
onTabSelection = listOf(
SetContext(
"currentTab",
"@{onTabSelection}"
)
),
currentTab = expressionOf("@{currentTab}"),
items = listOf(
TabBarItem("Tab 1"),
TabBarItem("Tab 2")
),
styleId = "TabBarStyle"
),
PageView(
currentPage = expressionOf("@{currentTab}"),
onPageChange = listOf(SetContext(
"currentTab",
"@{onPageChange}"
)),
children = listOf(
Text(
"Tab 1"
),
Text(
"Tab 2"
)
)
)
)
)
)
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.