Introducción a Xamarin.Form
Javier Suárez Ruiz
Javier Suárez
Microsoft MVP Windows Platform
Development
• Blog: http://geeks.ms/blogs/jsuarez
• Email: javiersuarezruiz@hotmail.com
• Twitter: @jsuarezruiz
Desarrollo en Xamarin
• La UI es específica de cada
plataforma.
• La lógica de la Aplicación es
en C# y compartida mediante
el uso de PCLs o proyectos
Shared.
• 70% aprox. De código
compartido.
El enfoque tradicional de Xamarin
Xamarin + Xamarin.Forms
Con Xamarin.Forms:
Se comparte más, controles compartidos
El enfoque tradicional de Xamarin
Shared UI Code
Xamarin + Xamarin.Forms
• Permite crear facilmente y con
rapidez interfaces de usuario
nativas compartidas
• Los elementos de
Xamarin.Forms son mapeados
a elementos nativos y
behaviors propios de cada
plataforma
• Podemos mezclar
Xamarin.Forms con APIs
nativas
Plataformas soportadas por Xamarin.Forms
Soporta:
• Android 4.0+
• iOS 6.1+
• Windows Phone 8.0
(Silverlight)
Que incluye
 40+ tipos de páginas, Layouts, y
controles
 Se puede utilizer code behind o
XAML
 Two-way Data Binding
 Navegación
 API de animaciones
 Servicio de dependencias
 Messaging Center
Páginas
Content MasterDetail Navigation Tabbed Carousel
Layouts
Stack Absolute Relative Grid ContentView ScrollView Frame
Controles
ActivityIndicator BoxView Button DatePicker Editor
Entry Image Label ListView Map
OpenGLView Picker ProgressBar SearchBar Slider
Stepper TableView TimePicker WebView EntryCell
ImageCell SwitchCell TextCell ViewCell
Button button = new Button
{
Text = "Click Me!",
Font = Font.SystemFontOfSize(NamedSize.Large),
BorderWidth = 1,
HorizontalOptions = LayoutOptions.Center,
VerticalOptions = LayoutOptions.CenterAndExpand
};
button.Clicked += OnButtonClicked;
Un botón en Xamarin.Forms
Creando una App Xamarin.Forms
Plantillas de
proyectos:
• Xamarin Studio
• Visual Studio
Dos formas de
compartir código:
• PCL
• Shared
Esctructura de un Proyecto Xamarin.Forms
Proyectos
específico
s de cada
plataform
a.
PCL o
Proyecto
Shared que
contará con
la lógica
compartida e
incluso UI
también.
Nuestra primera App
Xamarin.Forms utilizando C#
Nuestra primera App
Xamarin.Forms utilizando
XAML
Arquitectura de Apps con Xamarin.Forms
View
ViewModel
Model
Propiedades
Comandos
Notifica cambios
C#
Model
View
View
ViewModel
ViewModel
Model
Model
Cross Platform –PCL o Shared
Patrón MVVM aplicado en una
Aplicación Xamarin.Forms
Proyectos Shared
Los Proyectos Shared son compilados en cada
plataforma.
Podemos definir un servicio en cada Proyecto de cada
plataforma y utilizarlo en el Proyecto Shared.
Uso de APIs específicas de plataforma
La PCL no puede utilizer directamente código
específico de la plataforma.
PCL (C#) IPhoneDialer
PhoneDialerIOS PhoneDialerAndroid PhoneDialerWindows
Localización de dependencias
Xamarin.Forms incluye lo necesario para la gestión de
dependencias sin necesidad de librerías externas.
Para ello:
1. Definimos la interfaz en la PCL
2. Añadimos la implementación de la interfaz en cada
Proyecto específico de la plataforma.
3. Añadimos
para registrar la implementación de la dependencia.
4. Utilizamos la dependencia en cualquier parte
necesaria (PCL o en el código específico de la
plataforma)
Localización de dependencias,
llamando por teléfono
Gestión de la navegación en Xamarin.Forms
Añade
una
página a
la cola y
la coloca
como
página
actual
La navegación en Xamarin.Forms es gestionada por la
interface INavigation:
Elimina
la página
actual de
la cola y
navega a
la página
anterior.
Navegación entre multiples
páginas
Ecosistema de controles
creciente!
XLabs
Usando MVVM Light con
Xamarin.Forms
Preguntas y respuestas.
P&R
¿Dudas?
Javier Suárez
Microsoft MVP Windows Platform Development
• Blog: http://geeks.ms/blogs/jsuarez
• Email: javiersuarezruiz@hotmail.com
• Twitter: @jsuarezruiz
GRACIAS
Ven a conocer nuestras oficinas:
Avenida de Manoteras 38 – Oficina C311
28050 Madrid
Con Bravent tendrás proyectos cercanos. Conseguirás triunfos globales
Contacta con nosotros:
Llámanos:
91 240 4785
Envíanos un e-mail:
info@bravent.net
bravent@bravent.net
Visita nuestra web:
www.bravent.net
Síguenos en twitter:
@bravent
13

Más contenido relacionado

PPTX
Servicios Xamarin
PPTX
Introducción a Xamarin
PPTX
Introducción al desarrollo de aplicaciones Xamarin
PPTX
Integración Continua con Apps Xamarin
PPTX
Introduction to xamarin
PDF
Arquitectura xamarin - Nuestra primera app
PPTX
Xamarin forms en el mundo real
PPTX
PUE DAY 2017: Introducción a Xamarin
Servicios Xamarin
Introducción a Xamarin
Introducción al desarrollo de aplicaciones Xamarin
Integración Continua con Apps Xamarin
Introduction to xamarin
Arquitectura xamarin - Nuestra primera app
Xamarin forms en el mundo real
PUE DAY 2017: Introducción a Xamarin

La actualidad más candente (20)

PDF
Introducción al desarrollo de apps móviles con Xamarin (Android & iOS)
PPTX
Conociendo el resto de ecosistema Xamarin
PPTX
Xamarin Dev Days Madrid - Taller Xamarin
PPTX
Visual Studio 2017 Launch Event Sevilla
PPTX
Testing de Apps Xamarin
PPTX
Xamarin Dev Days - Introducción a Xamarin
PPTX
Intro to xamarin forms: converters, animations, behaviors and triggers
PPTX
Xamarin Basics
PPTX
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
PPTX
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
PPTX
Codemotion 2017 - Taller Xamarin
PPTX
Xamarin Hol - Módulo V: Mobile DevOps con Visual Studio Team Services y Hocke...
PPTX
Introduccion a Xamarin
PPTX
WinObjC: Windows Bridge para iOS
PPTX
Novedades de Xamarin 4
PPTX
dotNetMálaga - Taller Xamarin
PPTX
Xamarin Live Player
PPTX
Xamarin for Everyone
PPTX
re-Connect Madrid: Novedades Xamarin
PPTX
Introducción a Xamarin.Forms
Introducción al desarrollo de apps móviles con Xamarin (Android & iOS)
Conociendo el resto de ecosistema Xamarin
Xamarin Dev Days Madrid - Taller Xamarin
Visual Studio 2017 Launch Event Sevilla
Testing de Apps Xamarin
Xamarin Dev Days - Introducción a Xamarin
Intro to xamarin forms: converters, animations, behaviors and triggers
Xamarin Basics
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2017 - Taller Xamarin
Xamarin Hol - Módulo V: Mobile DevOps con Visual Studio Team Services y Hocke...
Introduccion a Xamarin
WinObjC: Windows Bridge para iOS
Novedades de Xamarin 4
dotNetMálaga - Taller Xamarin
Xamarin Live Player
Xamarin for Everyone
re-Connect Madrid: Novedades Xamarin
Introducción a Xamarin.Forms
Publicidad

Destacado (18)

PPTX
Arquitectura en Aplicaciones Xamarin
PPTX
Extendiendo Xamarin.Forms con Custom Renders
PPTX
Desarrollo de aplicaciones Windows Phone con Silverlight 8.1
PPTX
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
PPTX
Integrando nuestra Aplicación Windows Phone con Cortana
PPTX
Introducción a xamarin
PPTX
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
PPTX
Desarrollo para Microsoft Band con Xamarin
PPTX
Tus aplicaciones en pantalla grande con Xbox One
PPTX
Extendiendo Xamarin.Forms
PPTX
Xamarin REvolve 2016
PPTX
Xamarin Dev Days Madrid - Xamarin.Forms
PPTX
Novedades en Visual Studio Online
PPTX
Interfaces nativas Cross-Platform con Xamarin.Forms
PPTX
Microsoft Tech Summit - Taller Xamarin
PPTX
Xamarin University Sprint Fling 2016
PPTX
Introducción a Xamarin utilizando MVVMCross
PPTX
SVQDC - Desarrollo de Apps apra Hololens
Arquitectura en Aplicaciones Xamarin
Extendiendo Xamarin.Forms con Custom Renders
Desarrollo de aplicaciones Windows Phone con Silverlight 8.1
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Integrando nuestra Aplicación Windows Phone con Cortana
Introducción a xamarin
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Desarrollo para Microsoft Band con Xamarin
Tus aplicaciones en pantalla grande con Xbox One
Extendiendo Xamarin.Forms
Xamarin REvolve 2016
Xamarin Dev Days Madrid - Xamarin.Forms
Novedades en Visual Studio Online
Interfaces nativas Cross-Platform con Xamarin.Forms
Microsoft Tech Summit - Taller Xamarin
Xamarin University Sprint Fling 2016
Introducción a Xamarin utilizando MVVMCross
SVQDC - Desarrollo de Apps apra Hololens
Publicidad

Similar a Introducción a Xamarin.Forms (20)

PDF
Introduccion-a-Xamarin-y-Xamarin.Forms_1.pdf
PPTX
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
PDF
Topicos Selectos de Xamarin
PPTX
Introducción a Xamarin
PPTX
primera aplicacion Xamarin.pptx
PPTX
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
PPTX
DotNet2018: Xamarin.Forms Everywhere!
PPTX
Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...
PPTX
Semanahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
PPTX
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
PDF
Introducción a Xamarin Forms con XAML
PPTX
Reconnect(); Sevilla - Introducción a Xamarin 4
PPTX
Azure Tech Frogs La vida despues de Xamarin NET MAUI y el desarrollo de apps....
PPTX
Xamarin 360
PPTX
DotNetDom: El futuro de Xamarin
PPTX
Women Who Code Bogota: Introduction to Xamarin Forms
PPTX
Introducción a Live XAML
PPTX
Semana Lambda - Fundamentos de Xamarin - Desarrollo de apps moviles multiplat...
PPTX
.NET Day Guatemala
Introduccion-a-Xamarin-y-Xamarin.Forms_1.pdf
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Topicos Selectos de Xamarin
Introducción a Xamarin
primera aplicacion Xamarin.pptx
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
DotNet2018: Xamarin.Forms Everywhere!
Evento Bolivia - Fundamentos de Xamarin - Desarrollo de apps moviles multipla...
Semanahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
Introducción a Xamarin Forms con XAML
Reconnect(); Sevilla - Introducción a Xamarin 4
Azure Tech Frogs La vida despues de Xamarin NET MAUI y el desarrollo de apps....
Xamarin 360
DotNetDom: El futuro de Xamarin
Women Who Code Bogota: Introduction to Xamarin Forms
Introducción a Live XAML
Semana Lambda - Fundamentos de Xamarin - Desarrollo de apps moviles multiplat...
.NET Day Guatemala

Más de Javier Suárez Ruiz (20)

PPTX
Cape Town MS Developer User Group: Xamarin Community Toolkit
PPTX
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
PPTX
Monkey Conf 2020: .NET MAUI Handlers
PPTX
Creando controles para Xamarin.Forms
PPTX
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
PPTX
Crear interfaces de usuario atractivas con Xamarin.Forms
PPTX
#XamarinUIJuly Summary
PPTX
DotNet 2019: Optimizando Apps con Xamarin.Forms
PPTX
Taller Xamarin Monkey Conf 2018
PPTX
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
PPTX
.Net Conf Sevilla 2018
PPTX
Analizando interfaces de usuario avanzadas con Xamarin.Forms
PPTX
OpenSouthCode 2018: Taller Xamarin
PPTX
Novedades Xamarin 3.0 Preview
PPTX
Desarrollo Xamarin, más allá del desarrollo
PPTX
Introducción a Xamarin.Forms
PPTX
Aumento de productividad, herramientas Xamarin
PPTX
Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin
PPTX
Novedades Xamarin Connect(); 2017
PPTX
SVQXDG - Introducción a Embeddinator-4000
Cape Town MS Developer User Group: Xamarin Community Toolkit
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: .NET MAUI Handlers
Creando controles para Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.Forms
#XamarinUIJuly Summary
DotNet 2019: Optimizando Apps con Xamarin.Forms
Taller Xamarin Monkey Conf 2018
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
.Net Conf Sevilla 2018
Analizando interfaces de usuario avanzadas con Xamarin.Forms
OpenSouthCode 2018: Taller Xamarin
Novedades Xamarin 3.0 Preview
Desarrollo Xamarin, más allá del desarrollo
Introducción a Xamarin.Forms
Aumento de productividad, herramientas Xamarin
Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin
Novedades Xamarin Connect(); 2017
SVQXDG - Introducción a Embeddinator-4000

Introducción a Xamarin.Forms

  • 2. Javier Suárez Microsoft MVP Windows Platform Development • Blog: http://geeks.ms/blogs/jsuarez • Email: [email protected] • Twitter: @jsuarezruiz
  • 3. Desarrollo en Xamarin • La UI es específica de cada plataforma. • La lógica de la Aplicación es en C# y compartida mediante el uso de PCLs o proyectos Shared. • 70% aprox. De código compartido. El enfoque tradicional de Xamarin
  • 4. Xamarin + Xamarin.Forms Con Xamarin.Forms: Se comparte más, controles compartidos El enfoque tradicional de Xamarin Shared UI Code
  • 5. Xamarin + Xamarin.Forms • Permite crear facilmente y con rapidez interfaces de usuario nativas compartidas • Los elementos de Xamarin.Forms son mapeados a elementos nativos y behaviors propios de cada plataforma • Podemos mezclar Xamarin.Forms con APIs nativas
  • 6. Plataformas soportadas por Xamarin.Forms Soporta: • Android 4.0+ • iOS 6.1+ • Windows Phone 8.0 (Silverlight)
  • 7. Que incluye  40+ tipos de páginas, Layouts, y controles  Se puede utilizer code behind o XAML  Two-way Data Binding  Navegación  API de animaciones  Servicio de dependencias  Messaging Center
  • 9. Layouts Stack Absolute Relative Grid ContentView ScrollView Frame
  • 10. Controles ActivityIndicator BoxView Button DatePicker Editor Entry Image Label ListView Map OpenGLView Picker ProgressBar SearchBar Slider Stepper TableView TimePicker WebView EntryCell ImageCell SwitchCell TextCell ViewCell
  • 11. Button button = new Button { Text = "Click Me!", Font = Font.SystemFontOfSize(NamedSize.Large), BorderWidth = 1, HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.CenterAndExpand }; button.Clicked += OnButtonClicked; Un botón en Xamarin.Forms
  • 12. Creando una App Xamarin.Forms Plantillas de proyectos: • Xamarin Studio • Visual Studio Dos formas de compartir código: • PCL • Shared
  • 13. Esctructura de un Proyecto Xamarin.Forms Proyectos específico s de cada plataform a. PCL o Proyecto Shared que contará con la lógica compartida e incluso UI también.
  • 16. Arquitectura de Apps con Xamarin.Forms View ViewModel Model Propiedades Comandos Notifica cambios C# Model View View ViewModel ViewModel Model Model Cross Platform –PCL o Shared
  • 17. Patrón MVVM aplicado en una Aplicación Xamarin.Forms
  • 18. Proyectos Shared Los Proyectos Shared son compilados en cada plataforma. Podemos definir un servicio en cada Proyecto de cada plataforma y utilizarlo en el Proyecto Shared.
  • 19. Uso de APIs específicas de plataforma La PCL no puede utilizer directamente código específico de la plataforma. PCL (C#) IPhoneDialer PhoneDialerIOS PhoneDialerAndroid PhoneDialerWindows
  • 20. Localización de dependencias Xamarin.Forms incluye lo necesario para la gestión de dependencias sin necesidad de librerías externas. Para ello: 1. Definimos la interfaz en la PCL 2. Añadimos la implementación de la interfaz en cada Proyecto específico de la plataforma. 3. Añadimos para registrar la implementación de la dependencia. 4. Utilizamos la dependencia en cualquier parte necesaria (PCL o en el código específico de la plataforma)
  • 22. Gestión de la navegación en Xamarin.Forms Añade una página a la cola y la coloca como página actual La navegación en Xamarin.Forms es gestionada por la interface INavigation: Elimina la página actual de la cola y navega a la página anterior.
  • 25. XLabs
  • 26. Usando MVVM Light con Xamarin.Forms
  • 28. Javier Suárez Microsoft MVP Windows Platform Development • Blog: http://geeks.ms/blogs/jsuarez • Email: [email protected] • Twitter: @jsuarezruiz GRACIAS
  • 29. Ven a conocer nuestras oficinas: Avenida de Manoteras 38 – Oficina C311 28050 Madrid Con Bravent tendrás proyectos cercanos. Conseguirás triunfos globales Contacta con nosotros: Llámanos: 91 240 4785 Envíanos un e-mail: [email protected] [email protected] Visita nuestra web: www.bravent.net Síguenos en twitter: @bravent 13