【QML】qml动画机制总结

一、引言

使用Qml进行项目开发时,往往需要控制一个显示控件的x,y,z三轴的坐标值,旋转,缩放,变化等。这些效果可以使用QML的动画类型进行实现。

本文总结qml的动画机制,重点记录qml动画机制的主要QML类型,以及一些属性使用方法。

二、qml动画机制的主要类型

请添加图片描述
如上图所示,qml动画的根为Animation,在实际项目开发中,使用比较多的还是ColorAnimation、 NumberAnimation和RotationAnimation三个属性动画。

三、Animation

【属性】
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() – 停止动画

四、PropertyAnimation

【属性值】

序号属性名含义
1duration这个属性保存动画的持续时间,以毫秒为单位
2easing指定用于动画的缓动曲线
3exclude此属性保存不受此动画影响的项目
4from这个属性保存动画的起始值
5properties这些属性被用作一个集合来确定哪些属性应该被动画化
6property当一个动画是独立使用时,目标和属性都需要明确指定
7target动画的目标控件
8targets动画的多个目标控件【意味着可以控制多个QML类型的动画】
9to这个属性保存动画的结束值

五、使用总结

1、在开发设计中,使用Animation.Infinite一定要使用from属性指定动画的开始值,不然不会有循环效果。

2、PropertyAnimation + SequentialAnimation/ ParallelAnimation可以组合做出许多复杂的动画效果。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值