Aitor Sánchez - Blog - Oct. 31, 2023, 11:24 a.m.
¿Quieres modificar barra de estado del dispositivo desde tu app, por ejemplo para mostrar el título de la ventana? O, quizás ya sabes cómo se utiliza el compoente Status Bar Ionic, pero te falta algo de información para ponerla cómo a ti te gusta ¿verdad?
Me llamo Aitor Sánchez, soy desarrollador de apps desde 2014 y en este artículo vas a aprender a tener acceso a una referencia del Status bar del dispositivo y a cómo puedes editar dicha barra a tu antojo desde esta misma referencia.
Pero antes de continuar, esta es la Flutter Mafia. Es mi newsletter donde tu vas a aprender a hacer apps y a ganar dinero con ellas junto con otros genietes que ya están dentro. Y si te suscribes te regalo mi ebook "Duplica los ingreso de tus apps en 5 minutos" No es broma, quizás te interese.
Cómo con cada módulo externo, tendremos que instalarlo en nuestra app. Para ello vamos a usar las dos siguientes líneas de consola:
$ ionic cordova plugin add cordova-plugin-statusbar
$ npm install --save @awesome-cordova-plugins/status-bar@4
La primera, cómo ya conocerás, instala el plugin que comunicará la app con la parte nativa del sistema.
La segunda, comunicará nuestro código con el plugin. Y con esto ya estaríamos en disposición de continuar.
En todos los tutos lo digo, y no me cansaré, porque es una parte importante en las apps, sobre todo cuando estas crecen.
No es necesario que incluyamos los módulos en el “AppModule” porque se cargará en toda la app. Solo será necesario incluirlo donde lo vayamos a usar. Y de esta manera, ahorraremos recursos y daremos una mejor experiencia de usuario.
Código necesario en nuestro module:
...
import { StatusBar } from "@awesome-cordova-plugins/status-bar/ngx"
...
providers: [
...,
StatusBar,
...,
]
...
Cómo se trata de un componente que solo tiene “cavidad” en el móvil. Las plataformas soportadas son las siguientes:
A ver, es lo más lógico que solo esté para estas. Es el status bar y solo está disponible, de momento, en estos dispositivos.
Siempre me gusta comenzar esta parte con un ejemplo de código. Y este artículo no va a ser menos ¿No crees? :P
import { StatusBar } from '@ionic-native/status-bar';
constructor(private statusBar: StatusBar) { }
...
// Hacer que la Status Bar se superponga al contenido.
this.statusBar.overlaysWebView(true);
// Cambia el fondo de la Status Bar.
this.statusBar.backgroundColorByHexString('#ffffff');
En primer lugar, vamos a hacer un import de StatusBar en nuestra clase: import { StatusBar } from '@ionic-native/status-bar';
Posteriormente, al tratarse de un servicio, podemos inyectar una instancia del módulo en el constructor.
Avanzamos a “overlaysWebView” que, dependiendo del parámetro, la barra se superpondrá al WebView de Ionic.
Y para terminar el ejemplo, con “backgroundColorByHexString” cambiaremos el fondo de la barra por un blanco.
Pues ese ha sido el ejemplo. Podríamos extendernos mucho más, pero con este creo que se ha pillado bien el alma del asunto.
Ahora vamos a pasar a ver los métodos, campos y demás historias que tenemos disponibles y que es lo que podemos hacer con ellas. Vamos al lío, que aquí es donde comienza la chicha.
Pues hasta aquí llega la sección de los métodos. La verdad que no son muchos. Pensaba que íbamos a tener bastantes más. Pero mejor así…
Ahora vamos a ver los campos de clase que son públicos. La verdad que esta parte es bastante simple. Recuerda que quitaremos todos los campos de los padres. Solo vamos a usar los que son de este componente.
Mira, si tu mejoras le logo de tu aplicación de manera proactiva y basándote en una estrategia, las descargas de la app aumentarán y, por extensión, los ingresos que esa app te genera.
Bien, pues para apoyarte a que evalues, optimices y mejores tus logos, y tu estrategia, hemos creado esta herramienta. Básicamente puedes realizar este trabajo con un buen apoyo de la IA. No te espoileo más, entra en el enlace.
Y ahora si, ya hemos terminado. Espero haberte ayudado con tus dudas y nos vemos en el siguiente artículo. Hasta entonces ¡que vaya bien!