前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >win10 UWP 动画 动画入门

win10 UWP 动画 动画入门

作者头像
林德熙
发布2018-09-18 15:54:39
8630
发布2018-09-18 15:54:39
举报
文章被收录于专栏:林德熙的博客林德熙的博客

本文告诉大家如何写同一个简单的动画。

动画入门

本文开始写一个简单的动画,只是移动矩形作为本文的例子。

在 UWP 移动元素的动画,可以使用 RenderTransform 移动,然后使用动画修改 RenderTransform 进行动画。关于元素移动,请看 win10 uwp 拖动控件

首先写一个简单的界面,只有一个矩形

        <Grid x:Name="Bret">
            <Rectangle x:Name="Rolernd" Width="100" Height="100" Fill="#FFa2a2a2"
                       HorizontalAlignment="Center" VerticalAlignment="Top">
              
            </Rectangle>
        </Grid>

然后在矩形加上 RenderTransform ,作为移动

        <Grid x:Name="Bret">
            <Rectangle x:Name="Rolernd" Width="100" Height="100" Fill="#FFa2a2a2"
                       HorizontalAlignment="Center" VerticalAlignment="Top">
                <Rectangle.RenderTransform>
                    <TranslateTransform></TranslateTransform>
                </Rectangle.RenderTransform>
            </Rectangle>
        </Grid>

但是因为动画不可以直接播放,先加个按钮,点击按钮时播放。

        <Button Content="确定" Click="Button_OnClick"></Button>

现在界面看起来就是如下

        <Grid x:Name="Bret">
            <Rectangle x:Name="Rolernd" Width="100" Height="100" Fill="#FFa2a2a2"
                       HorizontalAlignment="Center" VerticalAlignment="Top">
                <Rectangle.RenderTransform>
                    <TranslateTransform></TranslateTransform>
                </Rectangle.RenderTransform>
            </Rectangle>
        </Grid>
        
        <Button Content="确定" Click="Button_OnClick"></Button>

开始写动画。

需要在 Resources 写动画,于是在页面写上动画,这里使用 DoubleAnimation ,注意需要 Storyboard.TargetName 说明动画的元素。因为 RenderTransform 动画有点难,于是我才写他。

   <Page.Resources>
        <Storyboard x:Key="Filiberto">
            <DoubleAnimation Storyboard.TargetName="Rolernd" Storyboard.TargetProperty="(Rectangle.RenderTransform).(TranslateTransform.X)"
                             From="0" To="100" Duration="0:0:1">
                
            </DoubleAnimation>
        </Storyboard>
    </Page.Resources>

其中的 From 就是修改数值从多少开始,To 就是到多少,后面的属性就是动画时间。写完动画就在按钮写播放,请看代码

        private void Button_OnClick(object sender, RoutedEventArgs e)
        {
            var s = (Storyboard)Resources["Filiberto"];
            s.Begin();
        }

点击F5就是可以看到界面出现矩形,按下按钮就向右走

win10 uwp 使用动画修改 Grid column 的宽度

http://www.cnblogs.com/KeithWang/archive/2012/03/30/2425588.html

http://www.cnblogs.com/lin277541/p/4882000.html

http://www.cnblogs.com/lin277541/p/5059489.html

http://www.cnblogs.com/lin277541/p/5064899.html

http://www.cnblogs.com/lin277541/p/5068410.html

http://www.cnblogs.com/lin277541/p/5074697.html

http://www.cnblogs.com/lin277541/p/4881188.html

http://www.cnblogs.com/lin277541/p/4876140.html

http://www.cnblogs.com/mantgh/p/4437892.html

http://www.datiancun.net/thread-1586-1-1.html


本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 动画入门
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档