Learn Performing Animation in .NET MAUI: Part 1
source link: https://www.syncfusion.com/blogs/post/learn-performing-animation-in-net-maui-part-1.aspx?utm_campaign=alvinashcraft_blog_edmsep22
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Learn Performing Animation in .NET MAUI: Part 1
According to Wikipedia, “Animation is a method in which figures are manipulated to appear as moving objects.” Animation in an app is essential to provide an appealing UI and better responsiveness. A cross-platform application like a .NET Multi-platform App UI (.NET MAUI) app also needs animation to make it more attractive.
Two kinds of animation can be applied in .NET MAUI:
- Basic animations
- Lottie animations
In this blog, let’s take a quick look at these animation methods.
.NET MAUI basic animation
As stated in the Microsoft documentation, “The .NET Multi-platform App UI (.NET MAUI) animation classes target different properties of visual elements, with a typical basic animation progressively changing a property from one value to another over a period of time.”
Built-in animations
There are four basic built-in animations available in .NET MAUI:
- Rotation
- Scale
- Translate
Fade animation can fade in and fade out a view by changing the opacity. Refer to the following code example.
this.fadeInImage.Opacity = 0; //Fade in await this.fadeInImage.FadeTo(1, 2000); //Fade out await this.fadeInImage.FadeTo(0, 2000);
Rotation
Rotate a view using the Rotate support. You can use general, vertical, horizontal, or relative rotation.
Refer to the following code example.
this.rotateImage.Rotation = 0; // General rotation await this.rotateImage.RotateTo(360, 2000); // Vertical rotation await this.rotateImage.RotateXTo(360 , 2000); // Horizontal rotation await this.rotateImage.RotateYTo(360, 2000);
Note: We can also rotate horizontally, vertically, and relatively using the RotateXTo, RotateYTo, and RelRotateTo APIs, respectively.
Scale
We can scale a view using the Scale property. There are four types of scaling: vertical, horizontal, aspect, and relative.
Refer to the following code example.
// Zoom in await this.scaleImage.ScaleTo(1, 2000); // Zoom out await this.scaleImage.ScaleTo(0, 2000); // Horizontal scaling await this.scaleImage.ScaleXTo(1, 2000); await this.scaleImage.ScaleXTo(0, 2000); // Vertical scaling await this.scaleImage.ScaleYTo(1, 2000); await this.scaleImage.ScaleYTo(0, 2000);
Note: We can also scale horizontally, vertically, and relatively using the ScaleXTo, SacleYTo, and RelScaleTo APIs, respectively.
Translate
We can translate a view to another location with an animation. Refer to the following code example.
// Translate to right await this.translateImage.TranslateTo(50, 0, 1000); // Translate to bottom await this.translateImage.TranslateTo(0, 50, 1000); // Translate to left await this.translateImage.TranslateTo(-50, 0, 1000); // Translate to top await this.translateImage.TranslateTo(0, -50, 1000); // Diagonal translation await this.translateImage.TranslateTo(50, 50, 1000);
Note: You can also create these animations with easing functions.
Lottie animation
Lottie animations are free, open-source packages that can be used in your .NET MAUI apps. They animate elements using a JSON file that contains the content for the animation. There are a lot of options available in Lottie animation.
Follow these steps to add Lottie animation to a .NET MAUI application.
Step 1: First, create a .NET MAUI application.
Step 2: Right-click on the project and select Manage NuGet Packages. Browse for SkiaSharp.Extended.UI.Maui and install the package.
Step 3: Then, open the MauiProgram.cs file and configure the SkiaShap like in the following code.
using SkiaSharp.Views.Maui.Controls.Hosting; builder.UseSkiaSharp();
Step 4: Go to the MainPage.xaml and add the SkiaSharp namespace. Refer to the following code.
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:skia="clr-namespace:SkiaSharp.Extended.UI.Controls;assembly=SkiaSharp.Extended.UI" x:Class="MAUIAnimations.MainPage">
Step 5: Finally, add SkLottieView with the options RepeatCount, Repeat Mode, and Source.
Note: Refer to the LottieFiles for a list of JSON files that can be used to add animation to your app. After preparing the JSON file, add it to Resource-> Raw Folder.
Refer to the following code example.
<skia:SKLottieView RepeatCount="-1" RepeatMode="Reverse" Source="example.json" WidthRequest="300" HeightRequest="300"/>.NET MAUI Animations
Conclusion
Thanks for reading! I hope you are now aware of how to add animations to your .NET MAUI application. In part two of this blog, we’ll look at custom animation in .NET MAUI!
Syncfusion .NET MAUI controls were built from scratch using .NET MAUI, so they feel like framework controls. They are fine-tuned to work with a huge volume of data. Use them to build your cross-platform mobile and desktop apps!
For current customers, the new Essential Studio version is available for download from the License and Downloads page. If you are not yet a Syncfusion customer, you can always download our free evaluation to see all our controls in action.
For questions, you can contact us through our support forum, support portal, or feedback portal. We are always happy to assist you!
Related blogs
Recommend
-
15
0:00 / 0:30 ...
-
7
협업툴 잔디jandi.com0:03 / 0:30
-
6
As you know, .NET MAUI evolved from Xamarin.Forms with a better developer experience and better performance. Like addi...
-
4
This is the final post in my series of replicating the UI for the Foodora app using .NET MAUI. In this post I’ll replicate the final page, namely the page that shows the details of a specific dish. The original design of the fourt...
-
4
Learning .NET MAUI Part 2 As noted in part 0, I assume you are a Xamarin.Forms/C# programmer, familiar with Visual St...
-
5
Learning .NET Maui Part 1 As noted in part 0, I assume you are a Xamarin.Forms/C# programmer, familiar with Visual St...
-
7
Learning .NET MAUI – Part 4 We’ve seen how to get a single zip code and display it in a series of labels. Let’s use a collection to take a look at how we might deal with that in MAUI. To get started, we’ll create...
-
3
Learning .NET MAUI – Part 5 When last we looked, we were returning a few countries. Let’s use ZipWise’s ability to look up a city name and give us all the info about all matching cities. We’ll then have fun with...
-
8
Learning .NET MAUI – Part 6 I’m going to start off where we were at the end of Part 5, but this time instead of creating two labels (for State and Zip) I’m going to create one label with MultiBinding:
-
1
.NET MAUI Cloud Skills Challenge – Learn .NET MAUI, Get Stickers! Matt Soucoup
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK