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

La clase ObservableCollection<t>

36/50
Recursos

La clase ObservableCollection es la clase ideal para manejar colecciones de datos ya que implementa tanto INotifyCollectionChanged como INotifyPropertyChanged de manera intr铆nseca, y realiza la actualizaci贸n del control de lista enlazado de manera autom谩tica como el ListView. Existen otros controles de lista que tambi茅n utilizan este mismo modelo de actualizaci贸n de propiedades como el <Picker />, entre otros.

Una recomendaci贸n fundamental en el desarrollo de aplicaciones con Xamarin.Forms es que no debemos meternos con los datos directamente de la interfaz de usuario, sino siempre, a trav茅s de las propiedades y los objetos que est茅n enlazados, dejando que las estructuras de Enlace de Datos se encarguen del trabajo de actualizaci贸n.

Aportes 6

Preguntas 3

Ordenar por:

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

SOLUCI脫N A LISTVIEW CON ITEMS EN BLANCO

Despu茅s de algunas horas intentando y debuggeando as铆 como indagando en el libro del profesor Rodrigo llegu茅 a la conclusi贸n que al ListView le falta un 鈥淒ataTemplate鈥 para que se aprecie correctamente.

<ContentPage.Resources>
        <local:Disco x:Key="disco1"
                     Titulo="Let It Be"
                     Banda="The Beatles" />

        <local:Datos x:Key="datos1" />

        <DataTemplate x:Key="DiscoDataTemplate">
            <ViewCell>
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition/>
                        <ColumnDefinition/>
                    </Grid.ColumnDefinitions>

                    <StackLayout>
                        <Label Text="{Binding Titulo}" />
                        <Label Text="{Binding Banda}" />
                    </StackLayout>
                </Grid>
            </ViewCell>
        </DataTemplate>
    </ContentPage.Resources>

    <Grid BindingContext="{Binding Source={StaticResource datos1}}">
        <Grid.RowDefinitions>
            <RowDefinition />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>

        <ListView ItemsSource="{Binding Discos, Mode=TwoWay}" 
                  SelectedItem="{Binding DiscoSeleccionado, Mode=TwoWay}"
                  ItemTemplate="{StaticResource DiscoDataTemplate}"
                  HasUnevenRows="True" />
        
        <StackLayout Grid.Row="1">
            <Label Text="{Binding DiscoSeleccionado.Titulo, Mode=OneWay}" />
            <Label Text="{Binding DiscoSeleccionado.Banda, Mode=OneWay}"/>
            <Button Text="AGREGAR DISCO"
            Clicked="OnClicked" />
        </StackLayout>
    </Grid>

Nota: lo m谩s probable es que al momento del curso las reglas de la versi贸n de Xamarin no eran tan estrictas con el ListView pero actualmente lo son, al parecer鈥


No me he metido con ninguno de los archivos en donde me marca error,el problema comenz贸 cuando agregue el Listview,que de hecho quite para ver si solucionaba el problema,si alguien pudiese indicarme que podr铆a estar causando esos errores se lo agradecer铆a mucho.

hay que tener en cuenta que cualquier propiedad dentro del objeto que usemos dentro de la colecci贸n y que queramos enlazar debe implementar INotifyPropertyChanged (Perd铆 tiempo con eso).

驴Tambien podriamos traer los diccionarios dinamicamente en formato JSON?

Buenas tardes
Me gustaria saber por que razon cuando la lista sobrepas los 200 elementos deja de pintar algunos renglones?
Como puedo hacer para que esto no suceda?