Realizzare Una Splash Screen Personalizzata Su Windows Phone 7

Author: ollie10 7/23/2010 2:15 PM

Come sappiamo nelle nostre applicazioni su Windows Phone abbiamo la possibilità di inserire un'immagine di Splash Screen che verrà mostrata al caricamento, semplicemente inserendo un file di nome SplashScreenImage.jpg nella root della nostra solution. Questo metodo però non ci da il controllo sull'applicazione e si limita a mostrare un'immagine statica e null'altro. Con pochissimo codice è possibile personalizzare la nostra splash screen inserendo una barra di caricamento che resterà attiva fin quando non avremo finito di fare le operazioni necessarie al caricamento dell'applicazione stessa.

windows phone splash screen

Prima di tutto ho creato uno User Control chiamato CustomPopup aggiungendo un'immagine, un testo e una Progress Bar a cui viene settato il parametro IsIndeterminate = true (in modo da farla continuare a scorrere finchè il caricamento non è terminato). Dopo aver creato lo User Control ho inserito il codice che permette di aprire la popup di caricamento al loading dell'applicazione, la popup si apre a 480x800 pixel coprendo così l'intero schermo in modo da rendere il funzionamento trasparente all'utente.

Infine ho usato un BackgroundWorker per eseguire le operazioni di caricamento in background.

    public partial class MainPage : PhoneApplicationPage
    {
        private Popup popup;
        private BackgroundWorker backroungWorker;
        
        public MainPage()
        {
            InitializeComponent();
            ShowPopup();
        }

        private void ShowPopup()
        {
            popup = new Popup();
            popup.Child = new CustomPopup();
            popup.IsOpen = true;
            StartLoadingData();
        }

        private void StartLoadingData()
        {
            backroungWorker = new BackgroundWorker();
            backroungWorker.DoWork += new DoWorkEventHandler(backroungWorker_DoWork);
            backroungWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(backroungWorker_RunWorkerCompleted);
            backroungWorker.RunWorkerAsync();
        }

        void backroungWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            this.Dispatcher.BeginInvoke(() => {popup.IsOpen = false;});
        }

        void backroungWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            // CARICO I MIEI DATI E FACCIO LE OPERAZIONI CHE DEVONO ESSERE ESEGUITE AL LANCIO DEL PROGRAMMA
            // NELLA DEMO LANCIO UNO SLEEP PER SIMULARE QUESTO CARICAMENTO
            Thread.Sleep(8000);
        }
    }

windows phone splash screen

Il codice è disponibile per il download qui: Ollie10.SplashScreen.zip (58,43 kb)

Tags: ,
Categories: Windows Phone
Permalink | Comments (0)
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su facebook
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su twitter
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su stumbleupon
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su digg
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su delicious
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su reddit
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su google
  • condividi Realizzare Una Splash Screen Personalizzata Su Windows Phone 7 su netvibes
  • aggiungi il feed di Realizzare Una Splash Screen Personalizzata Su Windows Phone 7

Add comment




  Country flag
biuquote
  • Comment
  • Preview
Loading