Hoy de vuelta con las últimas novedades. Está vez la versión 3.3 de Xamarin.Forms. En esta version vuelvén a añadir interesantes propiedades a los controles habituales que nos ayudan a una programación más rápida y sencilla. Además veremos que es Glidex y como nos ayuda a mejorar el rendimiento en nuestras aplicaciones de Android.
Label MaxLines
MaxLines, esta nueva propiedad nos permite como su nombre inidica especificar el número máximo de lineas que puede contener una etiqueta de texto. Antes, podiamos hacer alguna conbinación con la propiedad WordWrap. A partir de ahora podemos controlar la altura maxima de una forma sencilla para cualquier tamaño de letra.
TextDecorations
TextDecorations, es otra propiedad nueva que nos permite añadir un texto subrayado o tachado asignandole el valor underline o strikethrough respectivamente. Esta opción se puede aplicar tanto en Label como en el elemento Span. Un ejemplo que puede resultar más interesantes cuando viene acompañada por la propiedad FormattedText y varios Span.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<Label MaxLines="3"> <Label.FormattedText> <FormattedString> <Span Text="texto con palabras" /> <Span Text=" subrayadas" TextDecorations="Underline"> <Span.GestureRecognizers> <TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped" /> </Span.GestureRecognizers> </Span> <Span Text=" y" /> <Span Text=" tachadas" TextDecorations="Strikethrough" /> </FormattedString> </Label.FormattedText> </Label> |
GestureRecognizers
Ya que estamos nos hemos metido con los Span cabe mencionar que en esta nueva versión también se ha añadido la posibilidad de reconocer gestos con GestureRecognizers al igual que cualquier otro elemento. Ahora también es posible en Span.
WKWebView
Al fin en la versión 3.3 han incluido la recomendación de iOS desde su version 8.0 de usar WkWebView para la representación de HTML.
Por último y tal vez la más interesante novedad es la inclusión de Glidex.
Glidex
Glidex es un conector que es recomendado por Google para el manejo de imágenes. Para poder usarlo en Xamarin, únicamente tenemos que seguir unos sencillos pasos.
Nos descargamos el paquete NuGet Glidex.Forms y añadimos el siguiente código en la inicialización de la aplicación. Para ello añadimos el siguiente código en el metodo OnCreate de MainActivity.cs
1 2 3 4 5 |
Xamarin.Forms.Forms.Init(this, bundle); //Inicializamos glidex aquí Android.Glide.Formos.Init(); LoadApplication(new App()); |
Esta librería mejora considerablemente la memoria usada en los controles cuando contienen imágenes, aqui dejo una tabla del site oficial del desarrollo.
Peak Memory Usage | ||
Xamarin.Forms | Glidex | |
GridPage | 268,387,112 | 16,484,584 |
ViewCellPage | 94,412,136 | 12,698,112 |
ImageCellPage | 24,413,600 | 9,977,272 |
HugeImagePage | 267,309,792 | 9,943,184 |
Los números pintan muy bien pero un gráfico ayuda a ver la diferencial real de rendimiento.
Estas son a mi entender las novedades más importantes y que nos pueden ayudar y simplificar nuestra programación. No obstante, como siempre, aquí están todos los cambios detallados para quíen desee profundizar más.
Mis últimas palabras para recordaros que podeís dejar vuestras peticiones, opiniones o consulta en este formulario.