¡Bienvenido a otro lanzamiento del framework de desarrollo de aplicaciones multiplataforma NativeScript! La versión 6.5 de NativeScript ofrece algunos importantes cambios.
Antes de nada debemos actualizar nuestra versión de NativeScript, a la nueva versión 6.5:
**npm** install -g nativescript
A continuación, intentaremos revisar los cambios más importantes de esta nueva versión, uno por uno.
Los componentes Tabsy BottomNavigation se introdujeron como componentes beta en NativeScript 6.1. Con esta versión, ambos componentes están ampliando aún más su funcionalidad al proporcionar medios para crearlos mediante la programación del propio código.
Para admitir la creación dinámica de los componentes, se introdujeron dos nuevas propiedades como parte del subcomponentes TabStrip. El primero es el iconSource que se usa para crear mediante programación el ícono TabStrip (que admite un archivo de recursos vía res://, un archivo local vía ~/ y una fuente de ícono vía font://). Se llama a la segunda propiedad iconClass y su propósito es establecer la clase CSS que se aplicará al icono (imprescindible si desea utilizar una fuente de icono con font://).
Ejemplo para la creación dinámica de Tabs:
let tabs = new Tabs();
let myTabStrip = new TabStrip();
let tabStripItem1 = new TabStripItem();
tabStripItem1.title = "Tab 1";
tabStripItem1.iconSource = `font://${String.fromCharCode(0xf053)}`;
tabStripItem1.iconClass = "fas"; // e.g., Font Awesome
let tabStripItem2 = new TabStripItem();
tabStripItem2.title = "Tab 2";
tabStripItem2.iconSource = `font://${String.fromCharCode(0xf070)}`;
tabStripItem2.iconClass = "fas"; // e.g., Font Awesome
myTabStrip.items = [tabStripItem1, tabStripItem2];
let tabContentItem1 = new TabContentItem();
tabContentItem1.content = createContent("Content 1");
let tabContentItem2 = new TabContentItem();
tabContentItem2.content = createContent("Content 2");
let contentItems = [tabContentItem1, tabContentItem2];
tabs.tabStrip = myTabStrip;
// Note: The number of content items must be equal to the number of strip items
tabs.items = contentItems;
Estamos presentando dos nuevas propiedades para el componente TabStrip: selectedItemColor y unSelectedItemColor. La razón para introducir estas propiedades es tener la capacidad de modificar fácilmente el color del icono TabStrip y el texto de los elementos. Hacer esto también sigue las Pautas de diseño de materiales para que el icono y el color del texto sean los mismos.
Usar estas nuevas propiedades es bastante fácil. Supongamos que tenemos u componente simple Tabs y queremos hacer el selector rojo selectedItemColor o el selector en verde unSelectedItemColor:
<Tabs selectedIndex="1">
<TabStrip selectedItemColor="red" unSelectedItemColor="green">
...
</TabStrip>
</Tabs>
Cuando creemos nuestra aplicación, observaremos que el icono y el texto tendrán los colores especificados establecidos a través del framework.
Antes de la versión 6.5, el componente Tabs tenía las posibilidades de estilo limitadas bajo el soporte de iOS. Ahora las opciones de estilo en iOS se amplían enormemente al proporcionar una propiedad para la alineación de la tira de pestañas y también al proporcionar nuevas opciones para aplicar un estilo CSS extendido.
Para cambiar la alineación de TabStrip, establezca la propiedad iOSTabBarItemsAlignment del componente Tabs.
<!-- justify is now the defealt value for iOSTabBarItemsAlignment property -->
<Tabs iOSTabBarItemsAlignment="justify">
La nueva propiedad admite los siguientes valores:
La propiedad anterior ahora proporcionan medios para cambiar la font, background-color, color, y TextTransform. Tenga en cuenta que hay algunas limitaciones:
MDCTabBar sólo admiten dos estilos de los elementos de barra de pestañas – normal y selected, lo que significa que no se puede tener diferentes estilos de dos elementos con el mismo estado normal.TextTransform admitidos para TabStrip son none, initialy uppercase.iOSTabBarItemsAlignment está configurado en algo diferente a justify y se desea establecer el fondo del elemento seleccionado, puede lograrlo configurando el estilo :active del elemento TabStrip, pero el indicador de selección de resaltado no se mostrará en ese caso.Este es un cambio impulsado por la comunidad (¡gracias a MCurran16!) Se han extendido los datos de eventos de doble clic que hasta ahora eran de tipo genérico (GestureEventData). El recién introducido DoubleTapGestureEventData amplía los datos comunes al proporcionar dos métodos para acceder a las coordenadas del evento de doble toque desencadenado. Los métodos son getX() y getY() que como te puedes imaginar, devolverán las coordenadas X e Y para la interacción actual. Los valores están en píxeles del dispositivo según el sistema de coordenadas de la plataforma específico.
Con esta versión, continuamos apoyando a Kotlin, pero esta vez en el lado frontal del desarrollo de aplicaciones. Estamos presentando soporte experimental para escribir aplicaciones NativeScript con KotlinJS.
Debemos decir que esto es altamente experimental y está sujeto a cambios pero, sin embargo, estaríamos felices de que la comunidad eche un vistazo a la muestra HelloWorld con KotlinJS. Por favor, siga las instrucciones en el archivo README.md para usarlo. Pronto más documentación adicional.
Fuente: NativeScript Blog Oficial traducción al castellano por Pablo Álvarez Corredera bajo permiso del autor.
La biografía más vendida del cofundador de Apple, Steve Jobs; escrita por uno de los…
Hubo un tiempo en el que la “seguridad en el hogar” significaba confiar en un…
Elon Musk vuelve a romper todos los esquemas. Los accionistas de Tesla acaban de aprobar…
Los fans de Grand Theft Auto tendrán que esperar un poco más para volver a…
Five Nights at Freddy’s: Into the Pit nos sumerge en un misterioso mundo donde lo…
Adéntrate en el oscuro y retorcido mundo de Bendy and the Ink Machine, donde los…