O X do Xamarin Forms — Custom Dialogs , AiForms.Dialogs!

Thiago Bertuzzi
4 min readJan 20, 2022

Fala galera,

Tudo beleza?

A Muito tempo atras eu fiz um artigo sobre um controle que eu gosto bastante o ACR User Dialogs que nos ajuda a criar popups, toast e outros efeitos muito utilizados em Apps.

Porem hoje trago um outro pacote sensacional, que nos oferece um gama enorme de controles que nos ajudam a implementar essas telas em nossos Apps e este é o AiForms.Dialogs :

AiForms.Dialogs for Xamarin.Forms Demo (Dialog, Toast, Loading) — YouTube

Bora ver como utilizar?

Configurando o Controle

Vamos ao nosso querido Nuget instalar o pacote AiForms.Dialogs em todos os nossos projetos :

Agora vamos inicializar ele no iOS :

e no Android:

Pronto! Agora podemos utilizar!

Utilizando o Controle

O AiForms.Dialogs tem muitos controles, então vamos dar uma explorada nele por partes :

Para facilitar nossa demo vamos criar uma View com os botões para chamar as ações :

Dialog

Para utilizar o Dialog precisamos criar a nossa DialogView ,mas isso é bem simples :

Vamos criar uma ContentView e utilizar como base a DialogView do controle :

Podemos dar Override em 4 métodos :

  • public override void SetUp(){}: Acionado quando abre o Dialog
  • public override void RunPresentationAnimation() {} : Define a animação de abertura
  • public override void RunDismissalAnimation() {} : Define a animação de fechamento
  • public override void Destroy() {} : Quando é executado o dispose e etc

Alem dos eventos eu adicionei 2 botões , um para chamar o DialogNotifier.Complete(); que chama o Evento de Complete no Dilog e outro que chama o de Cancelar o DialogNotifier.Cancel();

o Resultado :

Loading

Vamos criar um comando de carregamento simples :

No método LoadingConfig você determina as cores do indicador, do popup, opacidade , mensagem e etc.

Em seguida chamamos o Loading.Instance.StartAsync para que ele apareça na tela. Dentro do método você pode executar sua ação, nesse caso é apenas um exemplo com um Delay para ele ficar carregando :

Se você precisa editar o comportamento padrão é possivel, basta você implementar sua Própria LoadingView com o exemplo no próprio repositório : muak/AiForms.Dialogs: AiForms.Dialogs for Xamarin.Forms (github.com) :

AiForms.Dialogs/customloading.png at master · muak/AiForms.Dialogs (github.com)

Toast

Para utilizar o Toast precisamos criar a nossa ToastView ,mas como do Dialog isso também é bem simples :

Vamos criar uma ContentView e utilizar como base a ToastView do controle :

Podemos dar Override em 3 métodos :

  • public override void RunPresentationAnimation() {} : Acionado quando a animação aparece
  • public override void RunDismissalAnimation() {} : Acionado quando a animação desaparece
  • public override void Destroy() {} : Quando é executado o dispose e etc

Pegando como base o próprio exemplo do repositório eu adicionei uma imagem e um label.

Em seguida basta chamarmos o comando em nosso botão informando o nome de nossa ToastView :

O Resultado :

O AiForms.Dialogs tem infinitas possibilidades de customização de seus controles e se quiser ver todas as opções basta verificar o repositório oficial.

Se quiser pode baixar o exemplo clicando aqui.

Quer ver outros artigos sobre Xamarin ? Clique aqui.

Espero ter ajudado!

Aquele abraço!

--

--

Thiago Bertuzzi

Microsoft MVP,Gamer, Desenvolvedor e apaixonado por tecnologia!