O documento discute animações e custom renderers no Xamarin.Forms, destacando a importância das animações para melhorar a experiência do usuário e como custom renderers permitem estender os controles padrão do Xamarin.Forms para adicionar funcionalidades customizadas nas plataformas nativas.
4. Importância das animações
• Captura do foco do usuário
• Dica do que irá acontecer se o usuário completar uma ação
• Relacionamento entre elementos
• Distração de operações demoradas em background
• Qualidade, detalhamento
7. Xamarin.Forms Animations
• Permite mudar propriedades visuais dos elementos
• Transforma as propriedades ao longo do tempo
• São awaitables
• ViewExtensions, Animation e AnimationExtensions
14. Anchor
• É o ponto de referência do posicionamento do elemento
• Também é usado como ponto de referência para animação
• Sua posição é relativa
• 0 é o ponto mais à esquerda
• 1 é o ponto mais à direita
17. Easing
• Funções de Easing nativas:
• Linear (padrão)
• SinIn, SinOut, e SinInOut
• CubicIn, CubicOut, e CubicInOut
• BounceIn e BounceOut
• SpringIn e SpringOut
https://developer.xamarin.com/api/type/Xamarin.Forms.Easing/
20. Xamarin.Forms x Customização
• Mais de 40 controles, páginas e componentes de layouts
• Reusabilidade de componentes de interface gráfica
• Produtividade
• Perfeito para aplicativos com componentes nativos das
plataformas
24. Como Xamarin.Forms funciona?
• Abstração da interface gráfica
• Resolução do componente depende da plataforma em que
roda
• Os controles do Xamarin.Forms são apenas abstrações em
cima de componentes padrões das plataformas
27. Implementação
• ExportRenderer
• Atributo que indica qual será a implementação para a classe declarada
no código compartilhado
• Atributo de assembly, deve ser declarado acima do namespace
28. Implementação
• Control
• Elemento disponível no ViewRenderer que indica o componente nativo
que será renderizado
• Element
• Elemento disponível no ViewRenderer que indica o componente
manipulado pelo Xamarin.Forms no projeto compartilhado
29. Custom Renderers Properties
• É possível definir properties que podem ser bindadas no XAML
declarando BindableProperty na classe do projeto Xamarin
Forms
• OnElementPropertyChanged do CustomRenderer permite
atulizar as propriedades necessárias sempre que o valor mudar