728x90
반응형
728x170
▶ MainPage.xaml
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage x:Class="TestProject.MainPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
<Grid
Margin="10"
RowDefinitions="*,Auto">
<Image x:Name="image" Grid.Row="0"
WidthRequest="250"
HeightRequest="310"
Source="dotnet_bot.png" />
<Button x:Name="animationButton" Grid.Row="1"
Margin="0,10,0,0"
Text="애니메이션" />
</Grid>
</ContentPage>
728x90
▶ MainPage.xaml.cs
namespace TestProject;
/// <summary>
/// 메인 페이지
/// </summary>
public partial class MainPage : ContentPage
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Constructor
////////////////////////////////////////////////////////////////////////////////////////// Public
#region 생성자 - MainPage()
/// <summary>
/// 생성자
/// </summary>
public MainPage()
{
InitializeComponent();
this.animationButton.Clicked += animationButton_Clicked;
}
#endregion
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Private
#region 애니메이션 버튼 클릭시 처리하기 - fadeInButton_Clicked(sender, e)
/// <summary>
/// 애니메이션 버튼 클릭시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private async void animationButton_Clicked(object sender, EventArgs e)
{
Func<double, double> easeFunction = t => 9 * t * t * t - 13.5 * t * t + 5.5 * t;
await image.TranslateTo(0, 200, 2000, easeFunction);
this.image.TranslationX = 0;
this.image.TranslationY = 0;
}
#endregion
}
728x90
반응형
그리드형(광고전용)
댓글을 달아 주세요