Qt Quick - 开启下一代交互动效原型设计

前言

在Qt 4.7中,Qt Quick这一概念被引入,当时我就被它强大的功能和能实现的炫酷效果所吸引,但鉴于它采用了一种新的编程语言QML,我一直没有深入学习过它。Qt 5.0以后,Qt Quick开始使用OpenGL作为渲染后端,并且引入例子系统、GraphicalEffects、Shaders等特性,使Qt Quick更为强大。诺基亚当初开发Qt Quick的初衷是将其作为一种原型工具,但就目前看来其作用远不止原型设计,我曾完全使用Qt Quick开发了一个汉字拼写大赛软件供学校使用,开发周期为三天课余时间,可见其开发效率是相当高的。

Why Qt Quick?

原型设计工具可谓数目众多,列举几个:

Quartz Composer

Qt Quick - 开启下一代交互动效原型设计_第1张图片

优点

  1. 苹果出品,功能十分强大
  2. 社区较为强大,插件多(如Origami)
  3. 实现的效果很棒,高保真原型设计
  4. 操作方便,仅需拖拽Patch即可完成开发

缺点

  1. 学习曲线陡峭,入门困难
  2. 不能输出或跨平台
  3. 不能在iOS和Android设备上调试
  4. 流程图不够直观,反人类

Axure

优点

  1. 可视化编辑,开发设计方便
  2. 自带预设动效
  3. 组件多,功能强大

缺点

  1. 不能生成高保真原型效果,使用HTML技术进行交互
  2. 可扩展性弱




Qt Quick首先弥补了Quartz Composer的几个不足,它的声明性语言十分直观,上手容易;它的扩展性十分强大,甚至可以与native C++进行交互;它使用OpenGL进行渲染,效果理想;支持跨平台、跨设备。相对于Axure,它更先进,支持的交互操作也更为丰富。

功能

作为原型设计工具,Qt Quick所提供的功能可谓十分丰富。

1. 强大的动画系统

Qt Quick得益于Qt Core中的Animation Framework,有十分强大的动画系统,时间线控制、丰富的缓动函数、支持多种动画类型(颜色、布局、锚定,甚至父子关系动画),你甚至可以在动画进行过程中加入脚本操作(ScriptAction)等。

2. 9-Patch支持

3. 粒子系统、Shader

Qt Quick使用OpenGL作为渲染引擎,配合上述技术,让你的原型炫酷起来,甚至比最终App都要炫酷。
Qt Quick - 开启下一代交互动效原型设计_第2张图片
Qt Quick - 开启下一代交互动效原型设计_第3张图片
Qt Quick - 开启下一代交互动效原型设计_第4张图片
Qt Quick - 开启下一代交互动效原型设计_第5张图片

4. Model-View机制

在Qt Quick中你可以使用各种Model来实现强大的列表视图,视图中的Item即是数据的映射,而不是伪数据,可以实现诸多交互操作

5. 完整的Canvas支持

前端的技术也可以拿到Qt Quick里使用,就像使用Canvas标签一样,实现更为自由的绘图操作

6. JavaScript

交互语言可选JavaScript和C++,原型也可以初具最终App的功能

7. 原生界面支持

Qt Quick使用预置库可以轻松实现Windows、OS X、Android系统的原型界面样式

What’s next?

上文简单介绍了Qt Quick的优点及特性,但只是一些皮毛,为让大家更好了解Qt Quick,博主将于近期发布Qt Quick实战教程。
Qt Quick - 开启下一代交互动效原型设计_第6张图片

你可能感兴趣的:(Qt)