Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo fornece dicas para projetar uma página personalizada para uso em um aplicativo baseado em modelo. Uma página personalizada permite que você crie uma página semelhante a um aplicativo de tela em seu aplicativo baseado em modelo.
Importante
As páginas personalizadas são um novo recurso com alterações significativas no produto e atualmente têm uma série de limitações conhecidas descritas em Problemas conhecidos da página personalizada.
Controles com suporte em uma página personalizada
A criação de página personalizada dá suporte a um subconjunto de controles de aplicativo de tela. A tabela a seguir lista os controles com suporte no momento.
| Controle | Tipo de Controle | Notas |
|---|---|---|
| Rótulo1 | Tela | |
| Caixa de texto1 | Entrada | |
| Seletor de data1 | Entrada | |
| Botão1 | Entrada | |
| Caixa de Combinação1 | Entrada | |
| Caixa de Seleção1 | Entrada | |
| Ativar/desativar 1 | Entrada | |
| Grupo de opções1 | Entrada | |
| Slider1 | Entrada | |
| Classificação1 | Entrada | |
| Contêiner Vertical | Layout | Novo contêiner de layout horizontal responsivo |
| Contêiner Horizontal | Layout | Novo contêiner de layout horizontal responsivo |
| Editor de Rich Text | Entrada | |
| Galeria | Lista | |
| Ícone | Mídia | |
| Image | Mídia | |
| Editar Formulário | Entrada | |
| Exibir Formulário | Entrada | |
| Componentes de código | Personalizada | Adicionar componentes de código a uma página personalizada |
| Componentes do Canvas (prévia) | Personalizada | Adicionar componentes de tela a uma página personalizada |
1 O controle é um novo controle moderno. O controle foi introduzido para aplicativos baseados em tela no Teams. O controle é baseado na biblioteca Fluent UI, empacotado com o Power Apps Component Framework.
Importante
Os controles do Fluent UI (v8) que você adiciona a uma página personalizada estão obsoletos. Os controles modernos os substituem. Atualize seus aplicativos para controles modernos para continuar obtendo as melhorias mais recentes de design, desempenho e acessibilidade. Para obter mais informações, consulte Atualizar controles de interface do usuário fluentes para controles modernos.
Suporte a componentes personalizados para página personalizada
Você pode adicionar componentes de UX personalizados low-code (componentes de canvas) e pro-code (componentes de código) ao seu ambiente e disponibilizá-los para todos os criadores. Para artigos sobre extensibilidade de UX específicos para páginas personalizadas, consulte Adicionar componentes de tela a uma página personalizada para seu aplicativo baseado em modelo e Adicionar componentes de código a uma página personalizada para seu aplicativo baseado em modelo.
Em geral, a abordagem de extensibilidade de pouco código é mais simples de construir, testar e tem um custo de manutenção menor. Recomendamos avaliar os componentes da tela primeiro e, em seguida, usar os componentes de código apenas se houver necessidade de uma personalização mais complexa e avançada.
Mais informações:
- Galeria de componentes do Canvas
- Amostras de componentes de código
- Recursos da comunidade de componentes de código
Habilitar layout responsivo com controle de contêiner
Layouts de página personalizados responsivos são definidos pela construção de uma hierarquia de controles de Contêiner de layout horizontal e Contêiner de layout vertical. Esses controles são encontrados no Power Apps Studio, em Layout na guia Inserir.
Defina a altura e a largura mínima da tela no objeto Aplicativo para evitar barras de rolagem no nível da página e usar uma barra de rolagem de corpo vertical.
MinScreenHeight=200
MinScreenWidth=200
Opcionalmente, o tamanho do design da página personalizada pode ser ajustado em Configurações>Tela com Tamanho definido como Personalizado. Em seguida, defina a Largura e a Altura como um tamanho de página personalizada para desktop mais comum, por exemplo, largura 1080 e altura 768. Alterar essa configuração depois que os controles são adicionados à tela pode fazer com que algumas propriedades de layout sejam redefinidas.
Configure o contêiner mais acima para preencher todo o espaço e redimensionar com base no espaço disponível.
X=0
Y=0
Width=Parent.Width
Height=Parent.Height
Disposição horizontal de um contêiner de altura flexível
Para oferecer suporte a páginas que estão se adaptando do desktop para uma largura estreita, habilite essas propriedades em um contêiner horizontal com altura flexível. Sem essas configurações, a página recorta o controle quando fica estreita.
Direction=Horizontal
FlexibleHeight=true
Justify=Stretch
Align=Stretch
VerticalOverflow=Scroll
Wrap=True
Os contêineres ou controles filho diretamente sob esse contêiner devem ser configurados para ter uma largura mínima que permita à página caber em uma largura de 300 pixels. Considere o espaçamento interno do contêiner ou do controle, bem como o dos contêineres pai.
Disposição vertical de um contêiner de largura flexível
Para oferecer suporte a páginas que estão se adaptando do desktop para uma largura estreita, habilite essas propriedades em um contêiner vertical com largura flexível. Sem essas configurações, a página recorta o controle quando fica estreita.
Direction=Vertical
FlexibleWidth=true
Justify=Stretch
Align=Stretch
HorizontalOverflow=Scroll
Wrap=True
Os contêineres ou controles filho diretamente sob esse contêiner devem ser configurados para ter uma altura mínima que permita à página caber em uma largura de 300 pixels. Considere o espaçamento interno do contêiner ou do controle, bem como o dos contêineres pai.
Mais informações: Criando layout responsivo.
Contêiner vertical com cabeçalho fixo, corpo flexível, rodapé fixo
No Contêiner Vertical, defina Alinhamento (horizontal) como Estender
Insira três controles de Contêiner Horizontal dentro do Contêiner Vertical pai.
No primeiro e no terceiro controles de contêiner horizontal filho, defina Altura de stretch como desativada e reduza a altura para o valor do espaço necessário, como Altura = 80.
Contêiner horizontal com dois contêineres filhos iguais
No contêiner pai horizontal, defina Alinhar (vertical) como Esticar.
Insira dois controles Contêiner Vertical dentro do Contêiner Horizontal pai.
Estilização de controles de página personalizados para se alinharem aos controles de aplicativos orientados por modelo
Ao criar a página personalizada do designer de aplicativo moderno, esses recursos usam os valores padrão.
Tema para a página personalizada. Os valores do tema para os controles usados em uma página personalizada são definidos automaticamente para corresponder ao tema azul padrão da Interface Unificada. Este tema padrão é usado no estúdio e no tempo de execução do aplicativo. A seleção explícita do tema é removida da experiência de criação de página personalizada.
Os controles precisam usar um tamanho de fonte diferente, que se baseia em sua posição na hierarquia da página.
Observação
O texto da página personalizada tem um aumento de 1,33, então você precisa dividir o Tamanho da fonte alvo por 1,33 para obter o tamanho desejado.
Tipo de Rótulo Tamanho da fonte de destino FontSize a ser usada Título da página 17 12.75 Rótulos normais 14 10,52 Rótulos pequenos 12 9,02 Os controles de botão primário e secundário precisam das seguintes alterações de estilo:
Botões primários
Color=RGBA(255, 255, 255, 1) Fill=RGBA(41,114,182,1) Height=35 FontWeight=NormalBotões secundários
Color=RGBA(41,114,182,1) Fill=RGBA(255, 255, 255, 1) BorderColor=RGBA(41,114,182,1) Height=35 FontWeight=Normal
Navegação com a tecla Tab e acessibilidade via teclado para páginas personalizadas
As páginas personalizadas seguem o mesmo design de navegação de guia que é usado pelo aplicativo baseado em modelo de hospedagem. A estrutura HTML semântica visualmente alinhada ajuda os usuários a navegar pelas páginas personalizadas sem problemas ao usar um teclado ou um leitor de tela. Ao contrário dos aplicativos de tela independentes, os controles de página personalizados e outros elementos UX não precisam de atribuições explícitas de números de guia. Os controles modernos não têm uma propriedade TabIndex e utiliza a estrutura HTML semântica para navegação.
Vários elementos, como controles, tela e componentes de código, contêineres e assim por diante, podem ser tabulados com base em sua posição no layout de página personalizado. A navegação da guia segue a navegação da ordem Z. Pontos de tabulação individuais dentro de elementos de agrupamento maiores, como componentes e contêineres, são percorridos primeiro, antes de o foco passar para o próximo elemento na árvore do Modelo de Objetos do Documento (DOM).
Aqui está um exemplo de navegação em que a página contém controles, componentes de código e componentes e contêineres de tela.
Observação
Controles e elementos sobrepostos na página personalizada não têm seus DOMs mesclados, portanto os pontos de parada da tecla Tab podem ficar desalinhados com o layout visual. O mesmo ocorre para o posicionamento de elemento dinâmico usando fórmulas.
Confira também
Visão geral da página personalizada do aplicativo baseado em modelo
Usar o PowerFx em uma página personalizada
Adicionar uma página personalizada ao seu aplicativo baseado em modelo