Qml动画过渡-Transition
Qml可以使⽤状态来驱动界⾯,但这种变化是“突变”的,从⽤户⾓度来说是不友好的,需要使⽤Transition(过渡)来使状态的变化⽐较平滑。
Transition的属性
from/to:指定过渡的起始和结束状态。默认值是“*”,可以匹配所有状态。
animations:动画列表,默认在Transition添加动画的执⾏顺序是并⾏的,target属性⽆需指定(因为State中已经指定了)。
代码实例
import QtQuick 2.0
Rectangle{
id:rootItem
width:360
height: 240
color: "white"
Rectangle{
id:rect
color: "gray"
width: 50
height: 50
MouseArea{
id:mouseArea
anchors.fill: parent
}
//定义状态
states:[
State{
name: "pressed"
when: mouseArea.pressed
PropertyChanges {
target: rect
color:"green"
scale:2
}
}
]
transition用法搭配//定义过渡
transitions: [
Transition {
//没有设置from/to,过渡关联任何动画
//⽐例动画
NumberAnimation {
property: "scale"
duration: 1000
}
//颜⾊变化
ColorAnimation {
duration: 600
}
}
]
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论