Introducción a Xamarin

1

Todo lo que aprenderás sobre Xamarin Forms

2

¿Qué es Xamarin?

Instalación y configuración

3

Requerimientos de hardware y software

4

Introducción a Instalación de Visual Studio .NET y Herramientas

5

Instalación de Visual Studio .NET en Windows

6

Instalación de Visual Studio .NET for Mac

7

Configuración de Xamarin para iOS

Fundamentos de Xamarin.Forms

8

Mi primera app con Xamarin.Forms

9

Xamarin.Forms vs. Xamarin clásico

10

Estrategias para compartir código

Arquitectura de Xamarin.Forms

11

Anatomía de una aplicación

12

Arquitectura de Xamarin.Forms

Sistema de Propiedades Enlazables

13

Sistema de Propiedades Enlazables

14

Usando y creando Propiedades Enlazables

15

Propiedades Adjuntas

Manejo de Eventos

16

Manejo de eventos

17

Ciclo de vida

El Lenguaje XAML

18

¿Qué es XAML?

19

Espacios de Nombres XML

20

Sintaxis de subelementos y de contenido

21

Extensiones de Marcado

22

Recursos

23

XAML compilado

Interfaz de Usuario

24

Contenedores

25

Controles comunes

26

Creación de controles personalizados

27

Estilos

28

Triggers en Estilos

29

Diccionarios Mezclados

30

Transformaciones y Animaciones

31

Navegación

32

DisplayAlert y DisplayActionSheet

33

MessagingCenter

Enlace de Datos

34

Enlace de Datos

35

Interfaces de notificación

36

La clase ObservableCollection<t>

37

Contexto de Enlace de Datos

38

Enlace entre elementos

39

Propiedad StringFormat

40

Plantillas de Datos

41

Convertidores de Valor

Comandos

42

¿Qué son los Comandos?

43

Implementación básica e implementaciones existentes

El Patrón de Diseño Model-View-ViewModel (MVVM)

44

Introducción al patrón de diseño MVVM

45

¿Qué es MVVM?

46

Componentes del Patrón

47

Proyecto: Pomodoro

48

App Pomodoro

49

Continuando con la app Pomodoro

50

Concluyendo nuestra app Pomodoro

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Curso de Xamarin.Forms

Curso de Xamarin.Forms

Rodrigo Díaz Concha

Rodrigo Díaz Concha

Interfaces de notificación

35/50
Recursos

Cuando hablamos de la propiedad mode del Binding en el Enlace a Datos, es necesario tener en cuenta que los modos OneWay y TwoWay requieren que el objeto fuente implemente alguna de las siguientes interfaces para ser ““escuchado””:

  • INotifyPropertyChanged: cuando se trata de una propiedad simple, tradicional.
  • INotifyCollectionChanged: cuando hablamos de una colección de propiedades.

Generalmente, no es necesario implementar directamente la interfaz INotifyCollectionChanged ya que lo recomendado es usar la clase genérica ObservableCollection<T> que ya implementa de manera automática INotifyPropertyChanged y INotifyCollectionChanged.

Aportes 12

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Este es codigo que necesitas tener antes de tomar esta clase.

MainPage.xaml

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:d="http://xamarin.com/schemas/2014/forms/design"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             xmlns:local="clr-namespace:EnlaceDeDatos"
             mc:Ignorable="d"
             x:Class="EnlaceDeDatos.MainPage">
    <ContentPage.Resources>
        <local:Disco x:Key="disco1" Titulo="let it be" Banda="The Beatles s" />
    </ContentPage.Resources>
    <StackLayout>
        <!-- Place new controls here -->
        <Label Text="{Binding Titulo,Source={StaticResource disco1},Mode=OneWay}" />
        <Label Text="{Binding Banda,Source={StaticResource disco1},Mode=OneWay}" />
        <Button Text="Cambiar" Clicked="OnClicked"/>
    </StackLayout>

</ContentPage>

MainPage.xaml.cs

   public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private void OnClicked(object sender, EventArgs e)
        {
            var disco1 = Resources["disco1"] as Disco;
            disco1.Titulo = "Resolver";

        }
    }```

Disco.css


public class Disco
{

    public string Titulo { get; set; }
    public string Banda { get; set; }

}```

Este es el codigo que no emos visto en clases pasadas y lo pueden usar para esta clase .

Faltó un video, porque la clase Disco, y su mainpage apareció mágicamente y sin explicación alguna para mi.

Si no entendiron bien la clase pueden visitar la doc. de Xamarin.Forms alrespecto: https://xamarinhelp.com/xamarin-forms-binding/

Que gran curso 😃

Hola Amigos!
me quedé acá…
¿Como hago para enlazar la clase (Discos.cs) al label

{Binding Source={StaticResource disco1}

como llego a que Discos.cs sea disco1 o album1 segun el video?

Gracias

local, referencia al “nemespace” donde esta alojado la clase disco

Falta una clase

Alguien tiene el ejemplo completo que esta usando el profe?

Excelentes explicaciones, muy ordenadas e informativas.

Ya lo había dicho desde la ignorancia del primer video, pero ahora que entendí realmente, con todo respeto, el tutor es un Gran Maestro. Mil gracias 😃

Explicación del ([CallerMemberName] string propertyName = null)

Excelente explicación. Totalmente aclarada la primera clase donde me había quedado en la Luna.