复合动画
您可以混合等待和未等待的调用来创建复合动画。 例如,假设您希望按钮在大小扩展的同时旋转360度然后收缩。
ViewExtensions类定义一个方法名称ScaleTo,它为Scale属性设置动画,就像RotateTo为Rotate属性设置动画一样。 Button大小的扩展和收缩需要两个连续的动画,但这些动画应该与旋转同时发生,这只需要一次调用。 因此,RotateTo调用可以在没有await的情况下执行,并且当该动画在后台运行时,该方法可以对ScaleTo进行两次顺序调用。
在AnimationTryout中尝试:

async void OnButtonClicked(object sender, EventArgs args)
{button.Rotation = 0;button.RotateTo(360, 2000);await button.ScaleTo(5, 1000);await button.ScaleTo(1, 1000);
}

持续时间比正常时间长,这样你就可以看到发生了什么。 RotateTo方法立即返回,第一个ScaleTo动画从那时开始。 但是,等待第一个ScaleTo上的运算符会延迟第二个ScaleTo的调用,直到第一个ScaleTo完成。 那时,RotateTo动画只完成了一半,Button旋转了180度。 在接下来的1,000毫秒内,RotateTo几乎在第二个ScaleTo动画完成的同时完成。
这是按钮,因为它正在通过动画:

因为OnButtonClicked方法使用async关键字标记,并且第一个RotateTo没有await运算符,所以您将从编译器收到一条警告消息,指出:“因为不等待此调用,所以当前方法的执行在 通话完成。 考虑将'await'运算符应用于调用的结果。“
如果您不想看到该警告消息,可以使用禁用该特定警告的#pragma语句将其关闭:

#pragma warning disable 4014

您可以将该语句放在源代码文件的顶部,以禁用整个文件中的警告。 或者您可以将其置于违规通话之前,并在通话后重新启用这些警告:

#pragma warning restore 4014

第二十二章:动画(六)相关推荐

  1. 【信息系统项目管理师】第二十二章 信息系统安全管理(考点汇总篇)

    [信息系统项目管理师]第二十二章 信息系统安全管理(考点汇总篇) 考点分析与预测 信息安全为高级科目独有的章节,在第三版教材中有66页的内容.需要掌握的知识点非常多,且知识点非常散,在考试中上午一般考 ...

  2. 第二十二章 Caché 设计模式 享元模式

    文章目录 第二十二章 Caché 设计模式 享元模式 定义 优点 使用场景 结构图 描述 完整示例 实体类 抽象享元角色 实现享元角色 享元工厂 调用 思考 第二十二章 Caché 设计模式 享元模式 ...

  3. 鸟哥的Linux私房菜(服务器)- 第二十二章、邮件服务器: Postfix

    第二十二章.邮件服务器: Postfix 最近更新日期:2011/08/10 在这个邮件服务器的架设中,我们首先谈论 Mail 与 DNS 的重要相关性,然后依序介绍 Mail Server 的相关名 ...

  4. stm32l0的停止模式怎么唤醒_探索者 STM32F407 开发板资料连载第二十二章 待机唤醒实验

    1)实验平台:alientek 阿波罗 STM32F767 开发板 2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第二十二章 待机唤醒实 ...

  5. stm32 文件系统dma大小_「正点原子NANO STM32F103开发板资料连载」第二十二章 DMA 实验...

    1)实验平台:[正点原子] NANO STM32F103 开发板 2)摘自<正点原子STM32 F1 开发指南(NANO 板-HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 ...

  6. 数字图像处理:第二十二章 基于模型的编码

    第二十二章基于模型的编码 目录 引言 基于对象的编码 基于模型的编码 作业 1. 引言 为了获得更高的压缩效率并保持一定的视频质量以支持超低码率(大约10kbps)双向视频应用,不考虑内容特点的仅仅针 ...

  7. DayDayUp:《机器崛起前传》第二十二章【蹒跚而来】读后感(文章源自网络)—听课笔记

    DayDayUp:<机器崛起前传>第二十二章[蹒跚而来]读后感(文章源自网络)-听课笔记 <机器崛起前传> 1.机器岂不能有自我?         计算机的发展历程可谓蹒跚.从 ...

  8. 第二十二章 5为你的命名空间取个别名

    //第二十二章 5为你的命名空间取个别名 /*#include <iostream> using namespace std; namespace people_compay_boss { ...

  9. 第二十二章 6未命名的命名空间

    //第二十二章 6未命名的命名空间 /*#include <iostream> using namespace std; namespace {int x=2; } namespace { ...

  10. 第二十二章:洗净皮衣

    第二十二章:洗净皮衣 一种心态,希望找到,另外一种心态,不希望找到,两种心态相互的交织着,让李二陛下的内心相当的痛苦. "你又在这里胡思乱想呢."这个时候长孙皇后走了过来,对着李二 ...

最新文章

  1. Python Django 前后端数据交互 之 HttpRequest、HttpResponse、render、redirect
  2. hdu 1937(尺取法)
  3. 最常用的ES6特性(转)
  4. Kafka实践:到底该不该把不同类型的消息放在同一个主题中
  5. 总结之前做项目中要注意的一些书写规范
  6. 实际应用中带头节点的线性链表
  7. 华为路由器上有没有mac表_MAC地址表、ARP缓存表、路由表及交换机、路由器基本原理...
  8. Linux CentOS 安装 JAVA JDK 版本
  9. webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
  10. 【C#版本详情回顾】C#2.0主要功能列表
  11. 经典而常用的配乐和背景音乐合集(下)
  12. 2022国产GIS软件排名
  13. 界面控件DotNetBar for WinForms使用教程:LayoutControl布局与通用代码设置(三)
  14. pythonstdin_详解Python 中sys.stdin.readline()的用法
  15. ABAP 生产订单的创建与修改函数
  16. windows如何设置默认“大图标”显示
  17. 奥利给!2020年10月程序员工资最新统计,涨了!!!
  18. 不懂技术,怎样制作手机电子书?
  19. 饥荒计算机丢失xinput1 3.dll,【已解决】“由于找不到xinput1_3.dll,无法继续执行代码”...
  20. 【转载】按键精灵对安卓APP进行自动化界面点击测试

热门文章

  1. flutter刷新页面_用Flutter实现58App的首页
  2. win10下装黑苹果双系统_win10远程双系统重装电脑维修7黑苹果笔记本安装做虚拟机服务mac8...
  3. AndroidStudio导出aar文件给Unity使用
  4. hive币2021年预计涨到多少_比特币突破4万美元,比特币2021年会涨到多少?
  5. 区块链基础语言(三)——Go语言开发工具
  6. bzoj 4898: [Apio2017]商旅【Floyd+分数规划+二分】
  7. UVA - 10934 Dropping water balloons(装满水的气球)(dp)
  8. curl+个人证书(又叫客户端证书)访问https站点
  9. 登陆界面(jsp)客户端验证
  10. C++中string与int\double等互转