Rendere le applicazioni sempre più dinamiche e accattivanti con delle animazioni è spesso complesso, in quanto le competenze tecniche richieste devono spaziare tra diversi ambiti, tra cui il designer, l'animatore e lo sviluppatore che dovrebbe lavorare all'implementazione effettiva. L'implementazione, solitamente, viene spesso fatta in DirectX oppure sfruttando le Windows Composition API (che abbiamo già avuto modo di affrontare in script precedenti), proprio per via del fatto che si vogliono mantenere alte le performance dell'animazione stessa e i 60fps per l'utente che la potrà vedere fluida.
Purtroppo però, come abbiamo visto in passato, le API non sono banali e richiedono anche una certa conoscenza matematica per la realizzazione. Per questo Airbnb, la nota azienda che si occupa di affitti, ha creato una libreria per le sue applicazioni, chiamata Lottie, che è in grado di convertire animazioni fatte in Adobe After Effects in file JSON, che poi possono essere interpretati dall'applicazione stessa tramite un plugin. Anche per la Universal Windows Platform è disponibile un porting della versione ufficiale, disponibile qui: https://github.com/azchohfi/LottieUWP
Per l'implementazione all'interno delle nostre applicazioni, sarà sufficiente installare il pacchetto di NuGet LottieUWP, per avere accesso al nuovo componente LottieAnimationView che permette di renderizzare il file JSON creato in precedenza, come mostrato nell'esempio seguente:
<Page
xmlns:lottieUwp="using:LottieUWP"
...>
<lottieUwp:LottieAnimationView FileName="Assets/loader.json"
RepeatCount="-1"
AutoPlay="True" />
<!-- ... --!>
</Page>Il file laoder.json è stato pre-importanto all'interno della cartella degli Asset dell'applicazione stessa. Questo sistema rende più semplice integrare le animazioni poiché il render verrà effettuato dal componente LottieAnimationView stesso e, inoltre, sono già moltissimi i siti web che permettono di scaricare migliaia di asset JSON con le animazioni pre-costruite.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Integrare SQL Server in un progetto .NET Aspire
Gestire gli errori nelle Promise JavaScript con try()
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Definire il colore di una scrollbar HTML tramite CSS
Integrare OpenAI tramite Aspire
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Simulare Azure Cosmos DB in locale con Docker
Ridurre il reflow ottimizzando il CSS
Mischiare codice server side e client side in una query LINQ con Entity Framework
Creare un agente A2Acon Azure Logic Apps
Ottimizzare le pull con Artifact Cache di Azure Container Registry


