Nelle applicazioni Windows Phone il testo e le immagini sono gli elementi caratterizzanti per rappresentare e mostrare informazioni. Le immagini possono essere incluse nel pacchetto dell'applicazione, ma spesso vengono scaricate attraverso la rete e mostrate a video. Questa apparente semplice operazione coinvolge il download del file, il decoding dell'immagine e il rendering sul display, ma tutto ciò può diventare pesante e rendere meno fluida la navigazione quando le immagini sono molteplici e presentate in una lunga lista.
Per migliorare le prestazioni di download è sempre buona norma scaricare dalla rete immagini della risoluzione esatta che occorre per il rendering. Oltre a questo, è stato introdotto in Windows Phone 7.1 un attributo che indica al motore di effettuare sul thread secondario non solo il download dell'immagine, ma anche il decoding, influendo ancor meno sulla fluidità.
Ecco quindi un semplice esempio che dichiara un'immagine e sfrutta il nuovo BitmapCreateOptions.BackgroundCreation.
<Image> <Image.Source> <BitmapImage UriSource="{Binding UriImage}" CreateOptions="BackgroundCreation,DelayCreation"/> </Image.Source> </Image>
Un'altra opzione già impostata sull'oggetto BitmapImage, ma che occorre specificare se si specifica CreateOptions, è DelayCreation, che indica di scaricare e mostrare l'immagine solo quando necessario e quindi utile per collezioni di immagini.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire la cancellazione di una richiesta in streaming da Blazor
Le novità di Angular: i miglioramenti alla CLI
Utilizzare Azure AI Studio per testare i modelli AI
Sfruttare i KeyedService in un'applicazione Blazor in .NET 8
Limitare le richieste lato server con l'interactive routing di Blazor 8
Utilizzare il trigger SQL con le Azure Function
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Creare un'applicazione React e configurare Tailwind CSS
Utilizzare Model as a Service su Microsoft Azure
Short-circuiting della Pipeline in ASP.NET Core
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable