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
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Creare una libreria CSS universale: Cards
Utilizzare gRPC su App Service di Azure
Gestione degli eventi nei Web component HTML
Eseguire i worklow di GitHub su runner potenziati
Recuperare App Service cancellati su Azure
Migliorare la sicurezza dei prompt con Azure AI Studio
Gestire gli accessi con Token su Azure Container Registry
Potenziare la ricerca su Cosmos DB con Full Text Search
Rendere i propri workflow e le GitHub Action utilizzate più sicure
Effettuare il refresh dei dati di una QuickGrid di Blazor
Utilizzare il nuovo modello GPT-4o con Azure OpenAI
I più letti di oggi
- .NET Conference Italia 2024 - Milano
- Develop and distribute Azure Functions using K8s and CI/CD
- Disponibile la versione finale di Hyper-V: la virtualizzazione per Windows Server 2008
- Speciale Mastering Entity Framework
- Velocity arriva alla CTP3
- Silverlight Summer: un'estate speciale piena di Style per i controlli Silverlight!
- Disponibile la versione beta di Silverlight 4.0
- Mono 0.13: ora anche web services
- .NET Alerts Software Development Kit