Dev days 2 Xamarin Forms

24

Transcript of Dev days 2 Xamarin Forms

Page 1: Dev days 2 Xamarin Forms
Page 2: Dev days 2 Xamarin Forms
Page 3: Dev days 2 Xamarin Forms
Page 4: Dev days 2 Xamarin Forms

Enfoque tradicional Xamarin Con Xamarin.Forms

iOS C# UI Windows C# UIAndroid C# UI

Shared C# Backend

Shared UI Code

Shared C# Backend

Page 5: Dev days 2 Xamarin Forms

✓ 40+ Pages, layouts, y controles

(desde code behind o XAML)

✓ Two-way data binding

✓ Navegación

✓ Animation API

✓ DependencyService

✓ MessagingCenter

Shared C# Backend

Shared UI Code

Page 6: Dev days 2 Xamarin Forms

Layouts

Pages

Stack Absolute Relative Grid ContentView ScrollView Frame

Content MasterDetail Navigation Tabbed Carousel

Page 7: Dev days 2 Xamarin Forms

ActivityIndicator BoxView Button DatePicker Editor

Entry Image Label ListView Map

OpenGLView Picker ProgressBar SearchBar Slider

Stepper TableView TimePicker WebView EntryCell

ImageCell SwitchCell TextCell ViewCell

Page 8: Dev days 2 Xamarin Forms

Permite la extensión de controles visuales añadiendo la

funcionalidad inexistente.

Se debe realizar cada extensión especifica por cada

plataforma, con lo cual, se trabaja con código nativo

Puedes reutilizar controles existentes de Xamarin Forms

para no empezar desde 0.

Page 9: Dev days 2 Xamarin Forms

Xamarin.Forms Ecosystem

Page 10: Dev days 2 Xamarin Forms

Nos abstraemos de la plataforma nativa para la

navegación

Navegación de pila como cualquier aplicación móvil

Page 11: Dev days 2 Xamarin Forms

Abstraídos también de la plataforma

Todos los gestos “normales” dentro de una app móvil (Tap, Pinch,

Pan)

Se puede incluir dentro del XAML

Puedes crear tus propios contenedores de gestos.

Page 12: Dev days 2 Xamarin Forms

Integrado nativamente en Xamarin Forms

Dependency Service propio

Page 13: Dev days 2 Xamarin Forms

<?xml version="1.0" encoding="UTF-8"?>

<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"

xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"x:Class="MyApp.MainPage">

<TabbedPage.Children>

<ContentPage Title="Profile" Icon="Profile.png">

<StackLayout Spacing="20" Padding="20"

VerticalOptions="Center">

<Entry Placeholder="Username"

Text="{Binding Username}"/>

<Entry Placeholder="Password"

Text="{Binding Password}"

IsPassword="true"/>

<Button Text="Login" TextColor="White"

BackgroundColor="#77D065"

Command="{Binding LoginCommand}"/>

</StackLayout>

</ContentPage>

<ContentPage Title="Settings" Icon="Settings.png">

<!-- Settings -->

</ContentPage>

</TabbedPage.Children>

</TabbedPage>

Page 14: Dev days 2 Xamarin Forms
Page 15: Dev days 2 Xamarin Forms
Page 16: Dev days 2 Xamarin Forms
Page 17: Dev days 2 Xamarin Forms
Page 18: Dev days 2 Xamarin Forms

macOS Preview

Mejoras en GestureRecognizers

Android Support Libraries

PlatformSpecifics

Fast Scroll

NavigationPage Translucency

Blur Behind

Partial Collapse MasterPage

Native Control Binding

Map Extensibility

Fast Renderers Preview

Startup Time

ListView Scrolling

Memory Improvements

XAMLC

Bindable Picker

Frame Corners

Tizen

Forms Previewer

FlexLayout Preview

Xamarin.Forms Embedding

DataPages

Page 19: Dev days 2 Xamarin Forms

Source: Matthew Robbins - MFractor

Page 20: Dev days 2 Xamarin Forms
Page 21: Dev days 2 Xamarin Forms
Page 22: Dev days 2 Xamarin Forms
Page 23: Dev days 2 Xamarin Forms
Page 24: Dev days 2 Xamarin Forms

¿Preguntas?

Marco Antonio

Blanco

@marcoablanco