本文介绍的是Flickable和状态与动画,我们以前接触过QML相关的内容,那么本文介绍的内容就很明了了。先来看内容。

AD:

Flickable状态动画 下篇是本节要介绍的内容,Flickable和状态与动画 上篇,在这一节中我们再次讲解一下Flickable弹动效果。

二、Flipable翻转效果

    Flipable{  

  •         id:flipable; width:back.width; height:back.height  
  •         property int angle : 0  //翻转角度  
  •         property bool flipped : false //用来标志是否翻转  
  •         front: Image {source:”front.png”}  //指定前面的图片  
  •         back: Image {source:”back.png”}    //指定背面的图片  
  •         transform:Rotation{ //指定原点  
  •             origin.x:flipable.width/2; origin.y:flipable.height/2  
  •             axis.x:0; axis.y:1; axis.z:0 //指定按y轴旋转  
  •             angle:flipable.angle  
  •         }  
  •         states:State{  
  •             name:”back”  //背面的状态  
  •             PropertyChanges {target:flipable; angle:180}  
  •             when:flipable.flipped  
  •         }  
  •         transitions: Transition {  
  •             NumberAnimation{property:”angle”;duration:1000}  
  •         }  
  •         MouseArea{  
  •             anchors.fill:parent  
  •             onClicked:flipable.flipped =!flipable.flipped  
  •             //当鼠标按下时翻转  
  •         }  
  •     }  

运行效果如下:

我们可以看到,使用Flipable时,我们需要设置其前面和后面的图片,并设置背面的状态,然后设置旋转,并为状态改变设置动画就可以了。

通过改变转轴和角度,我们可以使用Flipable设计出很多其他特效。

三、Flickable效果就是你可以拖动它,它会根据你鼠标拖动的速度不同而移动不同的距离,并且这个移动好像有惯性一样,就像你推一下平面上的玩具汽车一样。我们看一个例子。

将程序代码更改如下:

  1. Rectangle{
  2. width:200; height:200
  3. Image{id: picture; source:”01.jpg”}  
  4. contentWidth:picture.width  
  5. contentHeight:picture.height  
  6. }  

这时运行程序,我们拖动整个图片,更改拖动的速度,这种感觉很爽!

我们拖动图片的角落,它会自动弹回去

对于这样一个较大的图片,我们可以使用Flickable效果来查看整张图片。其实到底是否可以移动整个图片,取决于contentWidth和contentHeight的大小。

我们如果将代码改为:contentWidth:100;contentHeight:100

那么图片就无法通过拖动显示全部内容了。

对于QML的核心内容。因为QML Flipable、Flickable状态动画 下篇的内容介绍完了,希望本章内容对你有所帮助,更多内容请参考编辑推荐。

QML Flipable、Flickable和状态与动画 下篇的更多相关文章

  1. QML Flipable、Flickable和状态与动画 上篇

    本文介绍的是QML Flipable.Flickable和状态与动画,我们以前接触过QML组件,和一些QML相关的内容,那么本文介绍的内容就很明了了.先来看内容. AD:51CTO 网+ 第十二期沙龙 ...

  2. QQ去除未读状态的动画

    QQ去除未读状态的动画 by 伍雪颖 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcmFpbmxlc3Zpbw==/font/5a6L5L2T/fonts ...

  3. 锋利的jQuery-4--停止动画和判断是否处于动画状态(防止动画加入队列过多的办法)

    1.停止元素的动画:stop([cleanQueue, gotoEnd]):第一个参数代表是否要清空未执行完的动画队列,第二个参数代表是否直接将正在执行的动画跳转到末状态. 无参数stop():立即停 ...

  4. QML中的state 状态

    QML中的状态其实很好理解,任何事物在某一事件都是有一个状态的. 比如你看到的一个窗口,这个时候里面的文字和图片正处于某个状态中.比如一个超链接,你点击了,发现颜色变了,你按了Ctrl+A,整个窗体好 ...

  5. 关于Unity中Mecanim动画的动画状态代码控制与代码生成动画控制器

    对于多量的.复杂的.有规律的控制器使用代码生成 动画状态代码控制 1:每个动画状态,比如进入状态,离开状态, 等都有可能需要代码来参与和处理,比如,进入这个动画单元后做哪些事情,来开这个动画单元后做哪 ...

  6. Unity3D动画面板编辑器状态属性对照表

    不推荐用AnimationUtility.SetEditorCurve问题很多,推荐AnimationCurve.AddKey.通过AnimationUtility.GetAllCurves可以获得编 ...

  7. 关键帧动画:@keyframes

    关键帧动画:@keyframes: <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...

  8. CSS篇之动画(2)

    animation-name(自定义动画) name为动画名称.不要用中文,尽量用与动画相关的名称.元素所应用的动画名称,必须与规则@keyframes配合使用,因为动画名称由@keyframes定义 ...

  9. 【原】移动web动画设计的一点心得——css3实现跑步

    今年3月份,由于公司业务需要,我转岗到微信产品部,离开了TID团队,人都是有感情的动物,更何况在一个团队呆了快 3 年,心中十分舍不得,鬼哥说了“天下没有不散的宴席...”,在我的世界里又多了一次离别 ...

随机推荐

  1. Chapter 2 Open Book——23

    Mike interrupted us then — he was planning an epic battle of the blizzard in the parking lot after s ...

  2. 《JS权威指南学习总结--6.7属性的特性》

    内容要点: 一.ES5中查询和设置属性的API 1.可以通过这些API给原型对象添加方法,并将它们设置成不可枚举的,这让它们看起来更像内置方法. 2.可以通过这些API给对象定义不能修改或删除的属性, ...

  3. iptables允许FTP

    在iptables里设置允许访问ftp(建立连接,数据传输) 由于ftp服务在建立连接和传输数据时,使用的时不同的端口,建立连接的端口20.21,数据传输的端口可以自定义: 修改ftp配置文件,指定用 ...

  4. [ An Ac a Day ^_^ ] hdu 4565 数学推导+矩阵快速幂

    从今天开始就有各站网络赛了 今天是ccpc全国赛的网络赛 希望一切顺利 可以去一次吉大 希望还能去一次大连 题意: 很明确是让你求Sn=[a+sqrt(b)^n]%m 思路: 一开始以为是水题 暴力了 ...

  5. $addToSet $push

    结果:

  6. Openjudge-计算概论(A)-鸡尾酒疗法

    描述: 鸡尾酒疗法,原指“高效抗逆转录病毒治疗”(HAART),由美籍华裔科学家何大一于1996年提出,是通过三种或三种以上的抗病毒药物联合使用来治疗艾 滋病.该疗法的应用可以减少单一用药产生的抗药性 ...

  7. Smarty 注册变量

    关于smarty类的一些解析 特别注意左右分隔符<{}>,display------显示模板的内容(里面是.html文件),assign-------注册变量 <?php //是一个 ...

  8. 如何在Eclipse和MyEclipse中安装SVN

    在安装目录下,找到dropins文件夹将svn文件复制进去.

  9. 移动端解决input focus后键盘弹出,高度被挤压的问题

    //解决弹出键盘页面高度变化bug var viewHeight = window.innerHeight; //获取可视区域高度 $("input").focus(functio ...

  10. 新学的js精集

    逻辑运算符比较 逻辑与和逻辑或这两个逻辑运算符它不单单会输出布尔型数据 1.只要"||"前面为false,无论"||"后面是true还是false,结果都返回& ...