动画是生命,动作,活力,在计算机上我们试图模仿这些品质,尽管仅限于操纵平面屏幕上的微小像素。
计算机动画通常指任何类型的动态视觉变化。简单地出现在页面上的按钮不是动画。但是一个按钮会逐渐消失,或移动到位,或者从一个点的动画中增大。通常,视觉元素会随着更改而响应用户输入
外观,例如按钮闪光,步进增量或ListView滚动。那也是动画。
应用程序有时希望超越自动和传统动画并添加自己的动画。这就是本章的全部内容。
你在上一章开始看到其中的一些内容。您了解了如何在可视元素上设置变换,然后使用计时器或Task.Delay为它们设置动画。 Xamarin.Forms还包括自己的动画基础结构,它存在于三个级别的编程接口中
类ViewExtensions,Animation和nimationExtensions。这个动画系统适用于复杂的工作,但对于简单的工作来说非常容易。本章从简单的高级类(ViewExtensions)开始,然后深入到更多功能的低层。
Xamarin.Forms动画类通常用于定位可视元素的属性。典型的动画在一段时间内逐渐将属性从一个值更改为另一个值。动画所针对的属性应由可绑定属性支持。这不是必需的,但可绑定属性通常旨在通过实现属性更改的处理程序来响应动态更改。如果对象甚至没有意识到属性正在被更改,那么为对象的属性设置动画也没有用!
Xamarin.Forms动画系统没有XAML接口。因此,本章中的所有动画都是通过代码实现的。但是,正如您将在下一章中看到的那样,您可以在称为触发器操作和行为的类中封装迟到的动画,然后从XAML文件中引用它们。触发器和行为通常是在MVVM应用程序中合并动画的最简单方法(以及推荐的方式)。