Extensões do FlexLayout
As extensões FlexLayout fornecem uma série de métodos de extensão que dão suporte ao posicionamento de uma View
em um FlexLayout
.
As extensões oferecem os seguintes métodos:
AlignSelf
O método de extensão AlignSelf
permite que você defina como uma View
em FlexLayout
é alinhada no eixo cruzado. Definir essa propriedade substitui a propriedade AlignItems
definida no próprio FlexLayout
pai. Para obter mais detalhes, veja a documentação da Microsoft.
O seguinte exemplo define a AlignSelfProperty
para um Label
como FlexAlignSelf.Stretch
:
new Label().AlignSelf(FlexAlignSelf.Stretch);
Base
O método de extensão Basis
permite que você defina a quantidade de espaço alocada para uma View
em FlexLayout
no eixo principal. O tamanho pode ser especificado em unidades independentes do dispositivo, como um percentual do tamanho do FlexLayout
ou com base na largura ou altura solicitada da View
. Para obter mais detalhes, veja a documentação da Microsoft.
O seguinte exemplo define a BasisProperty
para um Label
como new FlexBasis(50)
new Label().Basis(50);
Há uma sobrecarga adicional para Basis
, que aceita tanto float length
quanto bool isRelative
.
O seguinte exemplo define a BasisProperty
para um Label
como new FlexBasis(50, true)
:
new Label().Basis(50, true);
Cresça
O método de extensão Grow
especifica a quantidade de espaço disponível que uma View
em FlexLayout
deve usar no eixo principal. Para obter mais detalhes, veja a documentação da Microsoft.
O seguinte exemplo define a GrowProperty
para um Label
como 1f
new Label().Grow(1f);
Pedido
O método de extensão Order
permite que você altere a ordem em que os filhos do FlexLayout são organizados. Definir essa propriedade substitui a ordem que ela aparece na coleção Children
. Para obter mais detalhes, veja a documentação da Microsoft.
O seguinte exemplo define a OrderProperty
para um Label
como 1
new Label().Order(1);
Reduzir
O método de extensão Shrink
permite que você indique qual View
em FlexLayout
recebe prioridade ao ser exibido nos tamanhos completos quando o tamanho agregado de Children
é maior do que no eixo principal. Para obter mais detalhes, veja a documentação da Microsoft.
O seguinte exemplo define a ShrinkProperty
para um Label
como 0f
new Label().Shrink(0f);
API
Encontre o código-fonte dos métodos de extensão FlexLayout
no repositório do GitHub do Kit de Ferramentas da Comunidade do .NET MAUI.
.NET MAUI Community Toolkit