Reproducción automática
Autocompletar
Lección anterior
Completar y continuar
Curso avanzado en temas selectos de Xamarin Forms
La Clase Device
Introducción (0:30)
Conociendo la clase Device (0:59)
Constantes de la clase Device (1:18)
La propiedad Idiom (2:03)
La propiedad OS (1:13)
La propiedad RuntimePlatform (1:17)
El método BeginInvokeOnMainThread (6:12)
El método GetNamedSize (4:05)
El método OnPlatform (5:15)
Actualizando el método OnPlatform (2:23)
Combinando diferentes propiedades para validar el dispositivo de uso (2:21)
El método OpenUri (1:15)
El método StartTimer (1:34)
La clase Styles (1:49)
Espacios de nombres XAML
Introducción (0:19)
Compilación XAML (8:26)
Espacios de nombres por defecto (2:12)
Atributos del espacio de nombres x (0:22)
x-Arguments (5:39)
x-FactoryMethod (4:29)
x-TypeArguments (2:19)
Espacios de nombres no estándar (7:15)
Markup Extensions
Introducción (0:19)
Entendiendo la problemática (4:24)
Categorizando las markup extensions (3:32)
Utilizando la Markup Extension StaticExtension (8:41)
Utiizando StaticExtension con datos propios (6:32)
Utilizando las extensiones x:Array, x:Type y x:StaticResource en conjunto (3:53)
Creando una markup extension (10:55)
Simplifiando nuestra Markup Extension (1:10)
Creando la clase ImageResourceExtension (7:37)
Utilizando IServiceProvider (6:06)
El atributo ContentProperty (1:19)
Bindable Properties
Introducción (0:22)
Explicando la problemática (8:49)
Creando una Bindable Property (9:03)
Entendiendo qué son las Bindable Properties (9:26)
Probando nuestra Bindable Property (5:52)
Corrigiendo el conrol de usuario (4:12)
Attached Properties y Attached Behaviors
Introducción (0:46)
Creando una Attached Property (8:51)
Probando nuestra Attached Property (3:56)
Creando otra Attached Property (7:07)
Attached Behaviors (3:40)
Attached Behavior para un evento (10:54)
Transformaciones
Introducción (0:37)
Transformación Translation (6:42)
Creando efectos en letras con Translation (4:36)
Transformación Scale (2:37)
Transformación Rotation (1:40)
Transformaciones RotationX y RotationY (2:24)
Animaciones
Introducción (0:36)
Animaciones Simples (12:29)
Cancelando animaciones (3:37)
Ejecutando múltiples animaciones (3:23)
Easing Functions (6:28)
Easing Functions Personalizadas I (7:02)
Creando un popup animado (11:27)
Easing Functions Personalizadas II (14:25)
Animaciones personalizadas (8:37)
Triggers
Introducción (0:43)
Property Triggers (5:01)
Event Triggers (8:07)
Flexibilizando nuestro Event Trigger (5:36)
Type Converters (6:21)
Event Triggers para validar emails (5:14)
Data Triggers (4:33)
Data Triggers a ViewModels (8:18)
MultiTriggers (9:38)
Behaviors
Introducción (1:20)
Entendiendo un Behavior (8:19)
Creando un Behavior con Bindable Properties (9:39)
Probando nuestro Behavior con Bindable Properties (5:26)
Behavior Evento a Comando (12:27)
Utilizando paquete nuget BehaviorsPack (7:03)
Effects
Introducción (2:17)
Entendiendo la problemática (3:44)
Creando un effect (5:35)
Codificando el método OnAttached (5:31)
Probando nuestro effect (3:25)
Codificando el método OnDetached (8:06)
Creando el effect para Android y iOS (11:31)
La clase RoutingEffect (4:30)
Creando un effect para un Label subrayado (12:16)
El método OnElementPropertyChanged (10:36)
Creando un effect para cambiar la fuente de un Label (10:48)
Flexibilizando nuestros Effects (8:28)
Custom Renderers
Introducción (2:34)
Creando un Custom Renderer (10:24)
Derivando de una clase como buena práctica (3:40)
Custom Renderer para crear Gradientes - Android (7:45)
Custom Renderer para crear Gradientes - iOS (7:16)
Custom Renderer para crear Gradientes - UWP (6:30)
Custom Renderer para mostrar CheckBoxes (13:57)
Detectando cambios en el CheckBox en Android (13:21)
Detectando cambios en el CheckBox en iOS (3:49)
Detectando cambios en el CheckBox en UWP (4:12)
Data Template Selector
Introducción (0:37)
Creando el modelo de los anuncios (6:58)
Creando las celdas personalizadas (8:19)
Creando un repositorio de datos (4:28)
Creando el Data Template Selector (6:36)
Últimos ajustes y probando la aplicación (3:45)
Teach online with
Categorizando las markup extensions
Contenido de la lección bloqueado
Si ya estás inscrito,
necesitarás iniciar sesión
.
Inscríbase en el curso para desbloquear