第二十二章:动画(六)
复合动画
您可以混合等待和未等待的调用来创建复合动画。 例如,假设您希望按钮在大小扩展的同时旋转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
第二十二章:动画(六)相关推荐
- 【信息系统项目管理师】第二十二章 信息系统安全管理(考点汇总篇)
[信息系统项目管理师]第二十二章 信息系统安全管理(考点汇总篇) 考点分析与预测 信息安全为高级科目独有的章节,在第三版教材中有66页的内容.需要掌握的知识点非常多,且知识点非常散,在考试中上午一般考 ...
- 第二十二章 Caché 设计模式 享元模式
文章目录 第二十二章 Caché 设计模式 享元模式 定义 优点 使用场景 结构图 描述 完整示例 实体类 抽象享元角色 实现享元角色 享元工厂 调用 思考 第二十二章 Caché 设计模式 享元模式 ...
- 鸟哥的Linux私房菜(服务器)- 第二十二章、邮件服务器: Postfix
第二十二章.邮件服务器: Postfix 最近更新日期:2011/08/10 在这个邮件服务器的架设中,我们首先谈论 Mail 与 DNS 的重要相关性,然后依序介绍 Mail Server 的相关名 ...
- stm32l0的停止模式怎么唤醒_探索者 STM32F407 开发板资料连载第二十二章 待机唤醒实验
1)实验平台:alientek 阿波罗 STM32F767 开发板 2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第二十二章 待机唤醒实 ...
- stm32 文件系统dma大小_「正点原子NANO STM32F103开发板资料连载」第二十二章 DMA 实验...
1)实验平台:[正点原子] NANO STM32F103 开发板 2)摘自<正点原子STM32 F1 开发指南(NANO 板-HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 ...
- 数字图像处理:第二十二章 基于模型的编码
第二十二章基于模型的编码 目录 引言 基于对象的编码 基于模型的编码 作业 1. 引言 为了获得更高的压缩效率并保持一定的视频质量以支持超低码率(大约10kbps)双向视频应用,不考虑内容特点的仅仅针 ...
- DayDayUp:《机器崛起前传》第二十二章【蹒跚而来】读后感(文章源自网络)—听课笔记
DayDayUp:<机器崛起前传>第二十二章[蹒跚而来]读后感(文章源自网络)-听课笔记 <机器崛起前传> 1.机器岂不能有自我? 计算机的发展历程可谓蹒跚.从 ...
- 第二十二章 5为你的命名空间取个别名
//第二十二章 5为你的命名空间取个别名 /*#include <iostream> using namespace std; namespace people_compay_boss { ...
- 第二十二章 6未命名的命名空间
//第二十二章 6未命名的命名空间 /*#include <iostream> using namespace std; namespace {int x=2; } namespace { ...
- 第二十二章:洗净皮衣
第二十二章:洗净皮衣 一种心态,希望找到,另外一种心态,不希望找到,两种心态相互的交织着,让李二陛下的内心相当的痛苦. "你又在这里胡思乱想呢."这个时候长孙皇后走了过来,对着李二 ...
最新文章
- Python Django 前后端数据交互 之 HttpRequest、HttpResponse、render、redirect
- hdu 1937(尺取法)
- 最常用的ES6特性(转)
- Kafka实践:到底该不该把不同类型的消息放在同一个主题中
- 总结之前做项目中要注意的一些书写规范
- 实际应用中带头节点的线性链表
- 华为路由器上有没有mac表_MAC地址表、ARP缓存表、路由表及交换机、路由器基本原理...
- Linux CentOS 安装 JAVA JDK 版本
- webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
- 【C#版本详情回顾】C#2.0主要功能列表
- 经典而常用的配乐和背景音乐合集(下)
- 2022国产GIS软件排名
- 界面控件DotNetBar for WinForms使用教程:LayoutControl布局与通用代码设置(三)
- pythonstdin_详解Python 中sys.stdin.readline()的用法
- ABAP 生产订单的创建与修改函数
- windows如何设置默认“大图标”显示
- 奥利给!2020年10月程序员工资最新统计,涨了!!!
- 不懂技术,怎样制作手机电子书?
- 饥荒计算机丢失xinput1 3.dll,【已解决】“由于找不到xinput1_3.dll,无法继续执行代码”...
- 【转载】按键精灵对安卓APP进行自动化界面点击测试
热门文章
- flutter刷新页面_用Flutter实现58App的首页
- win10下装黑苹果双系统_win10远程双系统重装电脑维修7黑苹果笔记本安装做虚拟机服务mac8...
- AndroidStudio导出aar文件给Unity使用
- hive币2021年预计涨到多少_比特币突破4万美元,比特币2021年会涨到多少?
- 区块链基础语言(三)——Go语言开发工具
- bzoj 4898: [Apio2017]商旅【Floyd+分数规划+二分】
- UVA - 10934 Dropping water balloons(装满水的气球)(dp)
- curl+个人证书(又叫客户端证书)访问https站点
- 登陆界面(jsp)客户端验证
- C++中string与int\double等互转