定义一个按钮
<Button
x:Name="clickTest"
Text="点我开始!"
HeightRequest="300"
WidthRequest="300"
SemanticProperties.Hint="come on!"
Clicked="ClikeMe"
BorderColor="Green"
BackgroundColor="Green"
HorizontalOptions="Center">
</Button>
X,Y指定方向移动
await clickTest.TranslateTo(100, 100, 1000);
并发运行多个动画
await Task.WhenAny<bool>
(
clickTest.RotateTo(360, 4000),
clickTest.ScaleTo(2, 2000)
);
旋转
await clickTest.RotateTo(360, 2000);
Rotation = 0;
相对旋转
await clickTest.RelRotateTo(360, 2000);
使用定位点缩放和旋转
double radius = Math.Min(label1.Width, label1.Height) / 2;
clickTest.AnchorY = radius / clickTest.Height;
await clickTest.RotateTo(360, 2000);
淡入淡出
clickTest.Opacity = 0;
await clickTest.FadeTo(1, 4000);
复合动画
await clickTest.TranslateTo(-100, 0, 1000);
await clickTest.TranslateTo(-100, -100, 1000);
await clickTest.TranslateTo(100, 100, 2000);
await clickTest.TranslateTo(0, 100, 1000);
await clickTest.TranslateTo(0, 0, 1000);
10分钟动画
uint duration = 10 * 60 * 1000;
await Task.WhenAll
(
clickTest.RotateTo(307 * 360, duration),
clickTest.RotateXTo(251 * 360, duration),
clickTest.RotateYTo(199 * 360, duration)
);
取消动画
this.AbortAnimation("clickTest");