O que é o Xamarin.Forms?

Capturas de tela do aplicativo de exemplo Xamarin.Forms no iOS e no Android

Xamarin.Forms é uma estrutura de interface do usuário de software livre. Xamarin.Forms permite que os desenvolvedores criem aplicativos Xamarin.Android, Xamarin.iOS e Windows de uma única base de código compartilhada.

Xamarin.Forms permite que os desenvolvedores criem interfaces de usuário no XAML com code-behind em C#. Essas interfaces são renderizadas como controles nativos de alto desempenho em cada plataforma.

Para quem Xamarin.Forms é

Xamarin.Forms é para desenvolvedores com as seguintes metas:

  • Compartilhe o layout e o design da interface do usuário entre plataformas.
  • Compartilhe código, teste e lógica de negócios entre plataformas.
  • Escreva aplicativos multiplataforma em C# no Visual Studio.

Como funciona Xamarin.Forms

Xamarin.Forms diagrama de arquitetura

Xamarin.Forms fornece uma API consistente para criar elementos de interface do usuário entre plataformas. Essa API pode ser implementada em XAML ou C# e é compatível com DataBinding para padrões como MVVM (Model-View-ViewModel).

Em runtime, Xamarin.Forms utiliza renderizadores de plataforma para converter os elementos de interface do usuário multiplataforma em controles nativos no Xamarin.Android, Xamarin.iOS e UWP. Isso permite que os desenvolvedores obtenham aparência, sensação e desempenho nativos, enquanto aproveitam os benefícios do compartilhamento de código entre plataformas.

Xamarin.Forms os aplicativos normalmente consistem em uma biblioteca .NET Standard compartilhada e projetos de plataforma individuais. A biblioteca compartilhada contém exibições XAML ou C# e qualquer lógica de negócios, como serviços, modelos ou outro código. Os projetos de plataforma contêm qualquer lógica específica da plataforma ou pacotes exigidos pelo aplicativo.

Xamarin.Forms usa a plataforma Xamarin para executar aplicativos .NET nativamente entre plataformas. Para obter mais informações sobre a plataforma Xamarin, consulte O que é o Xamarin?.

Funcionalidade adicional

Xamarin.Forms tem um grande ecossistema de bibliotecas que adicionam funcionalidades diversas aos aplicativos. Esta seção descreve algumas dessas funcionalidades adicionais.

Xamarin.Essentials

Xamarin.Essentials é uma biblioteca que fornece APIs multiplataforma para recursos de dispositivo nativo. Como o próprio Xamarin, Xamarin.Essentials é uma abstração que simplifica o processo de acesso a utilitários nativos. Alguns exemplos de utilitários fornecidos por Xamarin.Essentials incluem:

  • Informações do dispositivo
  • Sistema de arquivos
  • Acelerômetro
  • Discagem telefônica
  • Conversão de texto em fala
  • Bloqueio de tela

Para obter mais informações, consulte Xamarin.Essentials.

Shell

Xamarin.Forms O Shell reduz a complexidade do desenvolvimento de aplicativos móveis fornecendo os recursos fundamentais que a maioria dos aplicativos exige. Alguns exemplos de recursos fornecidos pelo Shell incluem:

  • Experiência de navegação do Shell
  • Esquema de navegação baseado em URI
  • Manipulador de pesquisa integrado

Para obter mais informações, consulte Xamarin.Forms Shell

Elementos específicos da plataforma

Xamarin.Forms fornece uma API comum que renderiza controles nativos entre plataformas, mas uma plataforma específica pode ter uma funcionalidade que não existe em outras plataformas. Por exemplo, a plataforma Android tem funcionalidade nativa para a rolagem rápida em um ListView, mas o iOS não tem. Xamarin.Forms As específicas da plataforma permitem que você utilize a funcionalidade que só está disponível em uma plataforma específica sem criar renderizadores ou efeitos personalizados.

Xamarin.Forms inclui soluções pré-criadas para uma variedade de funcionalidades específicas da plataforma. Para obter mais informações, consulte:

Visual material

Xamarin.Forms O Material Visual é usado para aplicar regras de Design de Material a Xamarin.Forms aplicativos. Xamarin.Forms O Material Visual utiliza a propriedade Visual para aplicar seletivamente renderizadores personalizados à interface do usuário, resultando em um aplicativo com uma aparência consistente entre iOS e Android.

Para obter mais informações, consulte Xamarin.Forms Material Visual