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

Creaci贸n de controles personalizados

26/50
Recursos

El coraz贸n de Xamarin.Forms son los Renderers, que son los que permiten convertir las etiquetas de dise帽o de controles en XAML a componentes de c贸digo nativo en cada plataformay. Cada control disponible en cada una de las APIs del proyecto: Xamarin.Android, Xamarin.iOS, Xamarin.WUF, etc., tienen sus respectivos renderers que dibujan cada control en su forma nativa para cada plataforma.

As铆 por ejemplo, un control XAML de tipo <Entry /> se va a renderizar de la siguiente manera:

  • En Android: como un componente EditText
  • En iOS: como un componente UITextView
  • En WUF: como un TextBox
    etc.

Para crear Controles Personalizados, no s贸lo tenemos que crear el control en Xamarin.Forms usando .NET Standard sino tambi茅n tenemos que crear su renderer para la plataforma destino.

Para crear el control personalizado:

  • Se declara la clase del control en C#, heredando una clase base de Xamarin.Forms
  • Se identifican las propiedades enlazables que se van a asociar luego con los valores del componente nativo
  • Se crean las BindableProperties con su respectiva fachada CLR de la propiedad enlazable, con los accesores get y set.
  • Crear el renderer en el folder de la plataforma respectiva
  • Descargamos el paquete NuGet espec铆fico para el componente nativo que queremos implementar
  • En el renderer se asocian el control de Xamarin.Forms y el control nativo expuesto por el paquete NuGet
  • Se programa el override para cada m茅todo / evento que queremos enlazar entre los controles
  • Se indica SetNativeControl()
  • Se crea el m茅todo OnElementProperyChanged() para enlazar los eventos asociados al cambio de valores
  • Se exporta el renderer.

Y ya se puede usar el nuevo control en la interfaz de la aplicaci贸n usando Xaml.

Aportes 9

Preguntas 4

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Y el equivalente de monoDroid para iOS?

hubiera sido bueno poner el ejemplo para ios!!? alguien sabe como hacerlo en ios

Tengo una excepci贸n no controlada en el archivo

MainPage.xaml.g.cs

Unhandled Exception:
System.TypeInitializationException: The type initializer for 鈥楧irectorios.CircularProgress鈥 threw an exception.ocurri贸

Genial!! El limite lo pone la imaginaci贸n. Como siempre digo, TODO es posible, que te lleve mas o menos tiempo鈥

隆Hola!
Al igual que @irwin9507, tambi茅n tengo una excepci贸n: 鈥楽ystem.TypeInitializationException鈥.
驴C贸mo se puede solucionar?
Saludos.

Falto la parte de poner en funcionamiento el mismo.

funciona el mismo paquete nuGet para iOS?

Todas las propiedades enlazadas

No me quedo claro que hace OnElementChanged, alguna ayuda?