SlideShare uma empresa Scribd logo
1 de 17
alejandro@alejandroruizvarela.com
Effects
Permiten personalizar controles nativos y son usados típicamente para
cambios sencillos de estilo.
Estructura de la clase PlatformEffect
• Container: Referencia el control nativo donde pertenece nuestro
control.
• Control: Referencia al objeto gráfico al que efectuaremos los cambios.
• Element: Referencia al objeto de la capa forms al que pertenece
nuestro renderer.
Ciclo de Vida de la clase PlatformEffect
• protected abstract Void OnAttached ()
Método en el cual debemos de aplicar la personalización.
• protected abstract Void OnDetached ()
Método en el cual debemos de dar reset a nuestra capa de
personalización.
Registro en Código
• ResolutionGroupName(name): Nos permitirá asignar el grupo o
nombres de espacio de nuestros effects (solo puede ser asignado uno
por proyecto).
• ExportEffect(type,name):Nos permite asignar un Id único a nuestro
effect al igual a la clase que hará referencia.
Ejemplo Effect
https://goo.gl/Hp3qnT
Custom Renderer
Poderosa herramienta que nos permite personalizar, extender y crear
nuevas paginas, contenedores y controles.
Estructura de la clase ViewRenderer
• Control: Referencia al objeto gráfico al que efectuaremos los cambios.
• Element: Referencia al objeto de la capa forms al que pertenece
nuestro renderer.
Ciclo de Vida de la clase ViewRenderer
• protected override void OnElementPropertyChanged(object sender,
PropertyChangedEventArgs e)
Este evento es lanzado cuando alguna de las propiedades de nuestro
objeto forms es afectado.
• protected override void OnElementChanged(ElementChangedEventAr
gs<FType> e)
Este evento es lanzado cuando nuestro Elemento principal de forms es
cambiado ya se la primera vez que crear, se reutiliza o se elimina.
Registro en Código
• ExportRenderer (TForms, TNative): Nos permite ligar una clase en la
capa de Forms a un renderer nativo-
Renderers Prefabricados
• PageRenderer
• TabbedRenderer
• ViewRenderer
• FrameRenderer
• ScrollViewRenderer
• ActivityIndicatorRenderer
• BoxRenderer
• ButtonRenderer
• CarouselViewRenderer
• DatePickerRenderer
• EditorRenderer
• EntryRenderer
• ImageRenderer
• LabelRenderer
• ListViewRenderer
• MapRenderer
• PickerRenderer
• ProgressBarRenderer
• SearchBarRenderer
• SliderRenderer
• StepperRenderer
• SwitchRenderer
• TableViewRenderer
• TimePickerRenderer
• WebViewRenderer
• EntryCellRenderer
• SwitchCellRenderer
• TextCellRenderer
• ImageCellRenderer
• ViewCellRenderer
Ejemplo Custom Renderer 1
https://goo.gl/Hp3qnT
Ejemplo Custom Renderer 2
https://goo.gl/Hp3qnT
Referencias
Effects:
https://developer.xamarin.com
/guides/xamarin-forms/effects/
Custom Renderers:
https://developer.xamarin.com
/guides/xamarin-
forms/custom-renderer/
Xamarin.Forms Github:
https://github.com/xamarin/Xa
marin.Forms
Gracias, ¿Preguntas?
Alejandro Ruiz
Xamarin MVP & CTO @ Los Xamarinos
Effects y Custom Renderers en Xamarin.Forms
alejandro@alejandroruizvarela.com
@alejandroruizva
http://alejandroruizvarela.blogspot.com
https://github.com/alejandroruiz

Mais conteúdo relacionado

Semelhante a Effects & Custom Renderers en Xamarin.Forms

Novedades de aries
Novedades de ariesNovedades de aries
Novedades de aries
lmrv
 
Framework .NET 3.5 06 Operativa básica del framework .net
Framework .NET 3.5 06 Operativa básica del framework .netFramework .NET 3.5 06 Operativa básica del framework .net
Framework .NET 3.5 06 Operativa básica del framework .net
Antonio Palomares Sender
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
kaolong
 
Construye to propio generador de código con MOSKitt SDK
Construye to propio generador de código con MOSKitt SDKConstruye to propio generador de código con MOSKitt SDK
Construye to propio generador de código con MOSKitt SDK
Jose Manuel García Valladolid
 

Semelhante a Effects & Custom Renderers en Xamarin.Forms (20)

Novedades de aries
Novedades de ariesNovedades de aries
Novedades de aries
 
Novedades de aries
Novedades de ariesNovedades de aries
Novedades de aries
 
Framework .NET 3.5 06 Operativa básica del framework .net
Framework .NET 3.5 06 Operativa básica del framework .netFramework .NET 3.5 06 Operativa básica del framework .net
Framework .NET 3.5 06 Operativa básica del framework .net
 
Tarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdfTarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdf
 
Presentacion Patrones De Diseno GoF
Presentacion Patrones De Diseno GoFPresentacion Patrones De Diseno GoF
Presentacion Patrones De Diseno GoF
 
Introducción a Backbone
Introducción a BackboneIntroducción a Backbone
Introducción a Backbone
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Patrones GOF
Patrones GOFPatrones GOF
Patrones GOF
 
Presentación de eclipse(componentes básicos)
Presentación de eclipse(componentes básicos)Presentación de eclipse(componentes básicos)
Presentación de eclipse(componentes básicos)
 
Patrones de diseño de GoF
Patrones de diseño de GoFPatrones de diseño de GoF
Patrones de diseño de GoF
 
CrossDvlpu - REACT para desarrolladores de ASP.NET
CrossDvlpu - REACT para desarrolladores de ASP.NETCrossDvlpu - REACT para desarrolladores de ASP.NET
CrossDvlpu - REACT para desarrolladores de ASP.NET
 
Cross development - React para desarrolladores de asp.net
Cross development - React para desarrolladores de asp.netCross development - React para desarrolladores de asp.net
Cross development - React para desarrolladores de asp.net
 
Angular Fundamentals
Angular FundamentalsAngular Fundamentals
Angular Fundamentals
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
Arquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseñoArquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseño
 
Introduccion a Doctrine 2 ORM
Introduccion a Doctrine 2 ORMIntroduccion a Doctrine 2 ORM
Introduccion a Doctrine 2 ORM
 
GWT - Una introducción
GWT - Una introducciónGWT - Una introducción
GWT - Una introducción
 
Construye to propio generador de código con MOSKitt SDK
Construye to propio generador de código con MOSKitt SDKConstruye to propio generador de código con MOSKitt SDK
Construye to propio generador de código con MOSKitt SDK
 
Clase 12 jQuery basico
Clase 12  jQuery basicoClase 12  jQuery basico
Clase 12 jQuery basico
 

Mais de Alejandro Ruiz Varela

Mais de Alejandro Ruiz Varela (14)

Shapes Brief - .NET Conf Latinoamérica 2020
Shapes Brief - .NET Conf Latinoamérica 2020Shapes Brief - .NET Conf Latinoamérica 2020
Shapes Brief - .NET Conf Latinoamérica 2020
 
Primer vistazo a .NET MAUI
Primer vistazo a .NET MAUIPrimer vistazo a .NET MAUI
Primer vistazo a .NET MAUI
 
Data Binding for Xamarin Forms In-Depth
Data Binding for Xamarin Forms In-DepthData Binding for Xamarin Forms In-Depth
Data Binding for Xamarin Forms In-Depth
 
Xamarin.Forms Advanced Topics
Xamarin.Forms Advanced TopicsXamarin.Forms Advanced Topics
Xamarin.Forms Advanced Topics
 
.NET Conf 2019 updates for Mobile Developers
.NET Conf 2019 updates for Mobile Developers.NET Conf 2019 updates for Mobile Developers
.NET Conf 2019 updates for Mobile Developers
 
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
 
Mobile Machine Learning Made Easy with Azure Custom Vision @ Microsoft Ignite...
Mobile Machine Learning Made Easy with Azure Custom Vision @ Microsoft Ignite...Mobile Machine Learning Made Easy with Azure Custom Vision @ Microsoft Ignite...
Mobile Machine Learning Made Easy with Azure Custom Vision @ Microsoft Ignite...
 
2019 .NET Mobile Development Hot Topics
2019 .NET Mobile Development Hot Topics2019 .NET Mobile Development Hot Topics
2019 .NET Mobile Development Hot Topics
 
Unotalks - The Future of Xamarin.Forms
Unotalks - The Future of Xamarin.FormsUnotalks - The Future of Xamarin.Forms
Unotalks - The Future of Xamarin.Forms
 
Servicios cognitivos
Servicios cognitivosServicios cognitivos
Servicios cognitivos
 
Aplicaciones conectadas con Azure
Aplicaciones conectadas con AzureAplicaciones conectadas con Azure
Aplicaciones conectadas con Azure
 
"Cycle 8, Android Nougat & iOS 10" for Monkeys
"Cycle 8, Android Nougat & iOS 10" for Monkeys"Cycle 8, Android Nougat & iOS 10" for Monkeys
"Cycle 8, Android Nougat & iOS 10" for Monkeys
 
Xamarin.Android + Arduino : Hacking Robots
Xamarin.Android + Arduino : Hacking RobotsXamarin.Android + Arduino : Hacking Robots
Xamarin.Android + Arduino : Hacking Robots
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
 

Último

SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
EdwinC23
 
sistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gstsistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gst
DavidRojas870673
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
gustavoiashalom
 

Último (20)

APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión interna
 
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docx
 
TAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientosTAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientos
 
Sistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptxSistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptx
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 
Mecatronica Automotriz .pdf
Mecatronica Automotriz              .pdfMecatronica Automotriz              .pdf
Mecatronica Automotriz .pdf
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
metodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantasmetodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantas
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
sistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gstsistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gst
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
SESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdf
SESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdfSESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdf
SESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdf
 
2e38892c-fc5d-490e-b751-ce772cf4756f.pdf
2e38892c-fc5d-490e-b751-ce772cf4756f.pdf2e38892c-fc5d-490e-b751-ce772cf4756f.pdf
2e38892c-fc5d-490e-b751-ce772cf4756f.pdf
 
422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
 

Effects & Custom Renderers en Xamarin.Forms

  • 2. Effects Permiten personalizar controles nativos y son usados típicamente para cambios sencillos de estilo.
  • 3. Estructura de la clase PlatformEffect • Container: Referencia el control nativo donde pertenece nuestro control. • Control: Referencia al objeto gráfico al que efectuaremos los cambios. • Element: Referencia al objeto de la capa forms al que pertenece nuestro renderer.
  • 4. Ciclo de Vida de la clase PlatformEffect • protected abstract Void OnAttached () Método en el cual debemos de aplicar la personalización. • protected abstract Void OnDetached () Método en el cual debemos de dar reset a nuestra capa de personalización.
  • 5. Registro en Código • ResolutionGroupName(name): Nos permitirá asignar el grupo o nombres de espacio de nuestros effects (solo puede ser asignado uno por proyecto). • ExportEffect(type,name):Nos permite asignar un Id único a nuestro effect al igual a la clase que hará referencia.
  • 7. Custom Renderer Poderosa herramienta que nos permite personalizar, extender y crear nuevas paginas, contenedores y controles.
  • 8. Estructura de la clase ViewRenderer • Control: Referencia al objeto gráfico al que efectuaremos los cambios. • Element: Referencia al objeto de la capa forms al que pertenece nuestro renderer.
  • 9. Ciclo de Vida de la clase ViewRenderer • protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) Este evento es lanzado cuando alguna de las propiedades de nuestro objeto forms es afectado. • protected override void OnElementChanged(ElementChangedEventAr gs<FType> e) Este evento es lanzado cuando nuestro Elemento principal de forms es cambiado ya se la primera vez que crear, se reutiliza o se elimina.
  • 10. Registro en Código • ExportRenderer (TForms, TNative): Nos permite ligar una clase en la capa de Forms a un renderer nativo-
  • 11. Renderers Prefabricados • PageRenderer • TabbedRenderer • ViewRenderer • FrameRenderer • ScrollViewRenderer • ActivityIndicatorRenderer • BoxRenderer • ButtonRenderer • CarouselViewRenderer • DatePickerRenderer • EditorRenderer • EntryRenderer • ImageRenderer • LabelRenderer • ListViewRenderer • MapRenderer • PickerRenderer • ProgressBarRenderer • SearchBarRenderer • SliderRenderer • StepperRenderer • SwitchRenderer • TableViewRenderer • TimePickerRenderer • WebViewRenderer • EntryCellRenderer • SwitchCellRenderer • TextCellRenderer • ImageCellRenderer • ViewCellRenderer
  • 12. Ejemplo Custom Renderer 1 https://goo.gl/Hp3qnT
  • 13. Ejemplo Custom Renderer 2 https://goo.gl/Hp3qnT
  • 15.
  • 16.
  • 17. Gracias, ¿Preguntas? Alejandro Ruiz Xamarin MVP & CTO @ Los Xamarinos Effects y Custom Renderers en Xamarin.Forms alejandro@alejandroruizvarela.com @alejandroruizva http://alejandroruizvarela.blogspot.com https://github.com/alejandroruiz