第二十二章:动画(六)

复合动画
您可以混合等待和未等待的调用来创建复合动画。 例如,假设您希望按钮在大小扩展的同时旋转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动画完成的同时完成。
这是按钮,因为它正在通过动画:
2019_03_01_171052
因为OnButtonClicked方法使用async关键字标记,并且第一个RotateTo没有await运算符,所以您将从编译器收到一条警告消息,指出:“因为不等待此调用,所以当前方法的执行在 通话完成。 考虑将'await'运算符应用于调用的结果。“
如果您不想看到该警告消息,可以使用禁用该特定警告的#pragma语句将其关闭:

#pragma warning disable 4014

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

#pragma warning restore 4014

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/252216.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubantu之Git使用

本文讲述在Ubuntu 14.04 x64环境下,如何安装Git,配置连接GitHub,并且上传本地代码到github。 一. 注册Git账户以及创建仓库 要想使用github第一步当然是注册github账号了。之后就可以创建仓库了(免费用户只能建公共仓库&#xff0…

C#如何打包EXE程序生成setup安装文件

C#如何打包EXE程序生成setup安装文件作为研发人员,在本机上开发的winform wpf或者控制台程序需要发给其他人测试时候,一般需要对其进行打包生成setup安装文件,今天第一次,搜了下资料,记录如下:注&#xff1…

最具戏剧性的分析诊断案例——十分钟锁定数据库性能“元凶”

昨天,正好有点空时间想看看书,结果,刚打开书,没看几个字儿,接到用户电话说:一个库有问题,希望能帮忙看下。因为我知道他们那边也有自己的专职DBA,于是问:没让人给看看吗&…

Python黑科技:在家远程遥控公司电脑,python+微信一键连接!

有时候需要远程家里的台式机使用,因为我平时都是用 MAC 多,但是远程唤醒只能针对局域网,比较麻烦,于是我想用微信实现远程唤醒机器。 *注意:全文代码可左右滑动查看 准备工作 本程序主要是实现远程管理 Windows10操作系…

c#通过app.manifest使程序以管理员身份运行

通常我们使用c#编写的程序不会弹出这个提示,也就无法以管理员身分运行。微软的操作系统使用微软的产品方法当然是有的,通过app.manifest配置可以使程序打开的时候,弹出UAC提示需要得到允许才可以继续,这样就获得了管理员的权限来执…

MOS管基本认识(快速入门)

1. 三个极的判定G极(gate)—栅极,不用说比较好认 S极(source)—源极,不论是P沟道还是N沟道,两根线相交的就是 D极(drain)—漏极,不论是P沟道还是N沟道,是单独引线的那边2. N沟道与P沟道判别箭头指向G极的是N沟道 箭头背…

基础构建模块

5 基础构建模块 Java平台类库包含了丰富的并发基础构建模块,例如线程安全的容器类以及各种用于协调多个相互协作的线程控制流的同步工具类(Synchronizer)。本章将介绍其中一些最有用的并发构建模块。 5.1同步容器类 同步容器类包括Vector和Hashtable,二者…

TCP定时器

1. TCP中7种定时器 TCP中有7中定时器 (1)建立连接定时器(connection-establishment timer) (2)重传定时器(retransmission timer) (3)延迟应答定时器(delayed ACK timer) (4)坚持定时…

软件工程网络15个人阅读作业1 201521123038 游舒婷

软件工程网络15个人阅读作业1 201521123038 游舒婷 1.博客园地址 sakurai3104 2.码云地址 sakurai3104 3.阅读与思考 (1)回想一下你初入大学时对网络工程专业的畅想 当初你是如何做出选择网络工程专业的决定的? 填报志愿的时候,大…

18LaTeX学习系列之---LaTeX的参考文献

目录 目录前言(一)简单的参考文献1.说明2.源代码3.输出效果(二)以文件管理的方式1.说明:2.源代码:3.输出效果(三)直接从源网站获取1.说明2.操作目录 本系列是有关LaTeX的…

Python 基础(常用数据结构)

常用数据结构 1)元组 元组是一种静态的数据结构,无法修改,若要修改只能重新生成新的元组。 输出结果: 元组元素的获取是通过索引值去获得的;例如上面的tup1[0]返回apple;另外你可以直接把tup1一次性赋给多个…

Java IO(二)——RandomAccessFile

一、RandomAccessFile RandomAccessFile类可以说是Java语言中功能最为丰富的文件访问类,它提供了众多的文件访问方法。RandomAccessFile类支持"随机访问"方式,可以跳转到文件的任意位置处读写数据。要访问一个文件的时候,不想把文件…

centos7 安装python3

1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5。 使用 python -V 命令查看一下是否安装Python 然后使用命令 which python 查看一下Python可执行文件的位置 可见执行文件在/usr/bin/ 目录下,切换到该…

centos svn 的搭建

一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏…

软件建模——第3章 项目前期

3.1 项目前期的主要工作 3.1.1 现状分析 1.硬件分析 2.软件分析 3.1.2 需求收集 3.1.3 粗略设计 1.体系结构设计 2.硬件(网络)设计 3.应用系统设计 4.安全设计 5.配套设计 3.1.4 可行性分析 3.2 结构化的项目前期实例 3.2.1 组织分析(自动化…

echarts_部分图表配置_图表click事件

额。。当然其他事件都是支持的,此文仅以click做简单介绍: 请点击“柱子”。。。 官方介绍:http://echarts.baidu.com/tutorial.html#ECharts%20%E4%B8%AD%E7%9A%84%E4%BA%8B%E4%BB%B6%E5%92%8C%E8%A1%8C%E4%B8%BA 1 function bottom_z (thisI…

mysql 5.7.25 的安装与 安装错误修改 适用于5.7解压版

1,根据自己的需求去官网下载 2.解压到自己喜欢的路径 其中date 和 my.ini 在5.7后面的版本 解压后是没有的,需要自己配置。 可以自己创建my.ini文件 ,但是不能自己创建date文件夹。 其中my.ini文件的配置如下(如果报错要将目录文件…

解除服务器端口号占用及服务器端口号的修改

这几天因为面试的原因把SSH的东西重新巩固下,所以用的服务器是Tomcat。但是因为前一个项目用的服务器是Jboss,项目一期迭代完成,转交测试组进行测试,提了很多bug,所以当改bug的时候发现我Jboss的服务器可以允许&#x…

Python 标准类库-Windows特殊服务之msvcrt

标准类库-Windows特殊服务之msvcrt by:授客 QQ:1033553122 广告:出售自研自动化小平台(无需编码也可用),有需要请联系 测试环境 win7 64位 Python 3.4 64bit 控制台I/O 1. 例子 getch演示 假设 1.py脚本内容如下&#…