Search Share Home Devices Settings


Adattare un’app WP7.x a device con schermi grandi

(c) lorenzo barbieri - 22/01/2014

Da qualche mese è uscito il Lumia 1520, il primo device WP con schermo da 6” e risoluzione 1920x1080 (FullHD).

Sono usciti vari post (tra cui questo veramente ben fatto) che mostrano come rendere le proprie app WP8 al meglio con la nuova risoluzione, ma io avevo bisogno di farlo su un’app che ancora gira su WP7.5 e superiori.

Prima o poi devo decidermi a portarla completamente su WP8, ma non volevo perdere gli utenti WP7, molto numerosi sulla versione Gratis:

image

e un po’ meno numerosi su quella a pagamento:

image

Quello che ho fatto è stato creare un progetto ClassLibrary per WP7, copiarci dentro tutto il contenuto del progetto di esempio del post citato in precedenza:

image

poi ho sostanzialmente eliminato dal progetto tutto quello che dava errore di compilazione, e, per comodità e pigrizia, per capire se sono su uno schermo grande o piccolo ho creato una piccola proprietà, sempre prendendo spunto dal post precedente:

public bool IsBigScreen
{
    get
    {
        object temp;
        if (!DeviceExtendedProperties.TryGetValue("PhysicalScreenResolution", out temp))
            return false;

        var screenResolution = (Size)temp;

        // Can query for RawDpiY as well, but it will be the same value
        if (!DeviceExtendedProperties.TryGetValue("RawDpiX", out temp) || (double)temp == 0d)
            return false;

        var dpi = (double)temp;
        var screenDiagonal = Math.Sqrt(Math.Pow(screenResolution.Width / dpi, 2) +
                             Math.Pow(screenResolution.Height / dpi, 2));
        return (screenDiagonal > 5);

     }
}

a quel punto ho inserito il controllo ZoomBox “alla bisogna” impostando lo zoom che ritenevo opportuno per le varie sezioni.

Questi i risultati, su Lumia 1520 e il paragone sul 1020:

wp_ss_20140122_0003wp_ss_20140122_0001

L’unica “nota stonata” è la barra nera in cima che può essere eliminata solo aggiornando il progetto a WP8, cosa che farò nelle prossime settimane.

Tags: WPDEV

blog comments powered by Disqus

;