WP8.1 UI 编程 七、动画

1. 普通动画的目标属性:

普通UI控件属性,如Width,Height等;变换特效属性;三维变换特效属性。

普通UI控件属性会触发布局系统重新工作,因此首选后两种属性进行动画运用。

动画类位于Windows.UI.Xaml.Media.Animation命名空间下。

基于时间线动画,继承自Timeline:

线性插值动画,即From/To/By动画,反映对象在指定时间范围内持续渐变。

关键帧动画,更强大,可以指定任意数量目标值,控制它们之间的插值方法。

基于帧动画:

有些动画无法通过以上方法实现,通常是复杂动画,如模拟雪花飘落。每一帧都通过事件重绘界面。

线性插值动画有DoubleAnimation,ColorAnimation和PointAnimation,分别对Double,Color,Point类型的属性进行动画处理。

From:起始值

To:目标值,如果同时设置By,则优先于By

By:变化量值,对非数值类型没有意义

Duration:完整播放一次动画的时间长度,默认为1秒,格式为“时:分:秒”(TimeSpan对象),如果在代码中设置,则使用TimeSpan隐式转换为Duration。Duration提供了两个属性,Automatic和Forever。

AutoReverse:时间线是否自动倒退,默认为false。

RepeatBehavior:时间线重复播放次数。

RepeatBehavior有三种语法:

设置为“Forever”,表示无限重复;

重复运行次数,由一个整数迭代次数,和字符x构成,如“3x”表示三次;

时间跨度,格式为 “[天.]时:分:秒[.秒小数部分]”。

DoubleAnimation与Transform结合可以实现变换动画,只需指定Storyboard的TargetName和TargetProperty属性,与所用Transform关联。

ColorAnimation本质是对RGB色值的线性处理。用法类似,注意TargetProperty属性的设置,如:(Button.Background).(SolidColorBrush.Color)。

PointAnimation是Point的线性运动,可以实现Path的动画。

3. 关键帧动画

时间: 2024-10-21 19:17:02

WP8.1 UI 编程 七、动画的相关文章

WP8.1 UI 编程 一、程序界面

参考自林政<深入理解Windows Phone8.1 UI控件编程>,仅仅是我个人的总结,不能做学习用.后面文章同. 1. XAML是什么就不解释了,其实它经编译器形成.g.cs文件 obj\Debug\*.g.cs 如果XAML中声明的控件有x:Name属性,则会在.g.cs文件中生成对应代码.此文件也定义了InitializeComponent方法,由页面类的构造方法调用. 并且它是成功编译后才生成的,而同目录下*.g.i.cs文件则是在XAML修改后就静态生成,可以用于VS的智能感知等功

WP8.1 UI 编程 二、样式和模板

1. 每个控件都有一个Resources属性,把样式放在这个Resources里,就可以作为静态资源给这个控件的可视化树下的控件使用.如果定义在Page上,则整个页面都可以使用:同样Application上整个App都可以使用. Style的TargetType属性不一定要和使用这个样式的控件类保持一致,可以设置为它的父类.例如,设置为FrameworkElement也可以被TextBlock使用. 要Style实现继承,只需设置它的BasedOn属性. Style可以以编程方式动态创建和设置.

WP8.1 UI 编程 三、布局

1. Panel是所有布局面板的父类.常用的布局面板: Canvas,子元素可以根据区域内坐标定位. StackPanel,栈面板,布局结构就像一个栈,只有水平竖直两种方向. Grid,网格,子元素可以根据行列布局. 如果不需要进行复杂的布局,应尽量用相对简单的布局面板以提升表现,如用Canvas替代Grid. 布局是一个递归系统,先进行测量,再进行排列.测量是测量子元素所需大小,排列是最终子元素大小及位置. 应尽量减少重新布局,以提升表现. UI元素有两个重要的类UIElement和Frame

WP8.1 UI 编程 十一、列表

1. 列表控件: ItemsControl:最基本的列表控件,原生不支持滚动和虚拟化等.ListBox,Pivot,Hub等控件就是从它派生. ListBox:使用广泛的列表控件,支持虚拟化. ListView:WP8.1新增,比ListBox更强大,可以定义HeaderTemplate和FooterTemplate,可以通过ContainerContentChanging事件来获取列表数据虚拟化运行情况. GridView:WP8.1新增,网格控件,类似Toolkit中的WrapPanel,支

WP8.1 UI 编程 九、控件编程

1. 控件继承关系 UIElement ↑ FrameworkElement ↑                  ↑ Panel           Control ↑      ↑ ContentControl   ItemsControl UIElement是具有可视化外挂并且可以处理基本输入的大多数对象的基类,但不公开构造方法,其作用就是作为Framework的基类,对UI的基础操作进行封装. FrameworkElement扩展了UIElement,并添加布局相关方法和属性和对数据绑定

[转]android学习----基础UI编程(七)

自动完成输入框 AutoCompleteTextView 多内容自动完成输入框 19. AutoCompleteTextView 自动完成输入框 智能输入框 AutoCompleteTextView 1. 简介 一个可编辑的文本视图显示自动完成建议当用户键入.建议列表显示在一个下拉菜单,用户可以从中选择一项,以完成输入.建议列表是从一个数据适配器获取的数据. 2. 重要方法 clearListSelection():清除选中的列表项 dismissDropDown():如果存在关闭下拉菜单 ge

WP8.1 UI 编程 六、变换特效和三维特效

1. 变换特效 变换原理:是二维变换矩阵 M11 M12 0 M21 M22 0 OffsetX OffsetY  1 WP只支持仿射变换,因此矩阵右边是0.0.1. (x,y,1)乘矩阵得到(x1,y1,1),新坐标为(x1,y1). 即:坐标(x,y)经矩阵变换后,新坐标为(x*M11 + y*M21 + OffsetX,x*M12 + y*M22 + OffsetY). WP提供了很多Transform类以变换对象,只需应用到UIElement的RenderTransform属性即可. 列

WP8.1 UI 编程 四、图形

1. 图形中常用的基本的类 Point:(x,y)坐标确定的点. Size:由Height和Width确定高宽的大小类. Rect:矩形类,显然可以由一个Point和一个Size来确定. Color:由R.G.B.A确定的颜色类. Geometry和Shape都是定义空间区域的类,Shape拥有相关的画笔并可以呈现到屏幕,而Geometry不会. Shape常用属性: Fill:填充的Brush Stroke:笔触,边界颜色Brush StrokeThickness:边界厚度 Stretch:填

第二章 吸引你的眼球—UI编程(1)

第二章 吸引你的眼球-UI编程 学习Android应用程序的开发技术,除了先要熟悉相关工具以外,最直接的,就是学习如何使用各种UI组件.我们开发的应用程序,一般都会包含一组用户可见的界面,而这些界面就是由一个个的AndroidUI组件组成的.我们在学习界面开发技术的过程中,首先就要熟悉这些组件,然后才能将它们有效的组织起来,构成一个美观.合理的界面. 本章会先详细讲解一些常用的UI组件,及如何自定义组件,然后会说明一些其它常用的UI编程技术. 2.1 UI基础-常用UI组件 Android的组件