赞
踩
使用Qml进行项目开发时,往往需要控制一个显示控件的x,y,z三轴的坐标值,旋转,缩放,变化等。这些效果可以使用QML的动画类型进行实现。
本文总结qml的动画机制,重点记录qml动画机制的主要QML类型,以及一些属性使用方法。
如上图所示,qml动画的根为Animation,在实际项目开发中,使用比较多的还是ColorAnimation、 NumberAnimation和RotationAnimation三个属性动画。
【属性】
1、alwaysRunToEnd : bool
这个属性表示当动画停止时是否应该运行到完成。如果为真,动画将在停止时完成当前的迭代——通过将running属性设置为false,或者通过调用stop()方法。complete()方法不受此值的影响。
当循环属性被设置时,这个行为是最有用的,因为动画将正常播放,但不会重新开始。
2、loops : int
这个属性保存动画应该播放的次数。
如果设置为Animation.Infinite,动画将持续重复,直到被显式停止。通过将running属性设置为false,或通过调用stop()方法。
3、paused : bool
4、running : bool
【信号】
1、finished()
2、started()
3、stopped()
【方法】
1、complete()
停止动画,跳到最后的属性值
如果动画没有运行,调用此方法是没有效果的。在调用complete()之后,running属性将为false。
2、pause() – 暂停动画
3、restart() – 重启动画。
4、resume() – 恢复动画
5、start() – 启动动画
6、stop() – 停止动画
【属性值】
序号 | 属性名 | 含义 |
---|---|---|
1 | duration | 这个属性保存动画的持续时间,以毫秒为单位 |
2 | easing | 指定用于动画的缓动曲线 |
3 | exclude | 此属性保存不受此动画影响的项目 |
4 | from | 这个属性保存动画的起始值 |
5 | properties | 这些属性被用作一个集合来确定哪些属性应该被动画化 |
6 | property | 当一个动画是独立使用时,目标和属性都需要明确指定 |
7 | target | 动画的目标控件 |
8 | targets | 动画的多个目标控件【意味着可以控制多个QML类型的动画】 |
9 | to | 这个属性保存动画的结束值 |
1、在开发设计中,使用Animation.Infinite一定要使用from属性指定动画的开始值,不然不会有循环效果。
2、PropertyAnimation + SequentialAnimation/ ParallelAnimation可以组合做出许多复杂的动画效果。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。