javascript windows-phone winjs windows-phone-8.1

Habilite la barra de estado en las plantillas javascript de Windows Phone para Visual Studio 2013



windows-phone winjs (2)

¿Alguien sabe cómo habilitar la barra de estado (imagen) en una aplicación javascript Windows Phone 8.1? Estoy usando la plantilla dinámica de javascript en Visual Studio 2013 con la Actualización 2.


La respuesta de @Sorskoot me ayudó mucho, pero igual paso una hora buscando CÓMO CAMBIAR EL COLOR DE FONDO DE LA BARRA DE ESTADO . Así que lo compartiré (ya que habilitar la barra de estado y configurar su color por lo general van de la mano):

El siguiente código muestra la barra de estado (o, como el nombre sugiere envía la solicitud a la cola de mensajes para hacer eso)

var s = Windows.UI.ViewManagement.StatusBar.getForCurrentView(); s.showAsync();

Si intentas configurar colores como este

// THIS IS WRONG s.backgroundColor = ''red''; s.backgroundColor = ''#A65959'';

esto NO funcionará, arrojándote error: 0x800a13ec - JavaScript runtime error: Could not convert object to struct: object missing expected property ''a''

Esto sucede porque s.backgroundColor no es un objeto HTML, sino un objeto de tiempo de ejecución WinRT, por lo tanto, necesitamos usar la estructura ''Color'' del WinRT, que tiene poco que ver con los conceptos de color HTML / JS.

Pero primero primero vamos a corregir la transparencia (opacidad). Por defecto, la capa bg de la barra es completamente transparente. Establezca su opacidad a 1.0 para que sea completamente opaco.

TL; DR;

// THIS IS RIGHT s.backgroundOpacity = 0.99; s.backgroundColor = Windows.UI.ColorHelper.fromArgb(255, 0xA6, 0x59, 0x59); s.foregroundColor = Windows.UI.Colors.lightGray;

Arriba usamos la clase de ayuda para construir una estructura de Color WinRT. Tenga en cuenta que la opacidad está en el rango de 0-255 en los argumentos de los ayudantes. Sin embargo, en s.backgroundOpacity está flotante en el rango [0..1] >:o

Hay un montón de constantes de color predefinidas en Windows.UI.Colors , pero mind camelCasing (por ejemplo, lightGray ), que es diferente de la convención de nomenclatura de colores HTML / JS.


Por ejemplo, tendrá que agregar un poco de JavaScript a la función de listo de una página.

Primero obtén la barra de estado para la vista actual. Que decidir qué hacer con eso:

var s = Windows.UI.ViewManagement.StatusBar.getForCurrentView(); s.showAsync(); // shows the statusbar

Se puede encontrar más información sobre la barra de estado en MSDN .