O X do Xamarin Forms — Alterando a interface por plataforma

Image for post
Image for post

Fala galera,

beleza?

O Xamarin.Forms é incrível pois utiliza os controles nativos comuns de cada plataforma. Um botão criado em Forms sera um botão nativo do iOS e do Android.

Exatamente por isso o Forms não possui controles específicos por plataforma.

Porem é possível alterar a aparência dos controles de acordo com cada plataforma ! Como ? Bora ver!

A tag onPlatform pode ser muito util por exemplo em tamanhos de tela, imagine que por algum motivo no iOS você precisa adicionar um preenchimento , mas não quer utilizar isso nas outras plataformas.

Via XAML você pode fazer :

Desta forma apenas o iOS seria afetado. Podemos agrupar o onPlatform de valores semelhantes, facilitando o código. Ou se Não for relevante simplesmente não declarando :

Como onPlatform é uma classe genérica, você precisa especificar o argumento para utiliza-la, no caso do Padding é Thickness.

Outro exemplo que pode fazer, utilizar fontes especificas por plataforma :

E também mudar de cor :

Rodando:

Image for post
Image for post

É possível utilizar inclusive com Styles :

Rodando:

Image for post
Image for post

A maior parte dos apps que criamos geralmente apresentam interface semelhantes no Android e no iOS, respeitando as guidelines de cada plataforma.

Mas quando algumas UI são renderizadas em uma plataforma específica, podemos observar diferenças no comportamento de saída. Para essa esses casos, um ajuste é útil, nessas horas onPlatform nos salva :D.

Se quiserem podem baixar o exemplo utilizado clicando aqui.

Quer ver outros artigos sobre Xamarin ? Clique aqui.

Espero ter ajudado!

Aquele abraço!

Written by

Microsoft MVP,Gamer, Desenvolvedor e apaixonado por tecnologia!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store