本页内容

制作质量

如何在用户界面中实现高质量的动态效果:

  • 预览用户界面,检查 FPS 刷新率。
  • 对用户界面代码进行剖析,找出造成缓慢、反应迟钝和卡顿的原因。

FPS 刷新率

一般情况下,动画师会努力让渲染引擎达到一致的每秒 60 帧(FPS)刷新率。60 FPS 意味着每帧之间大约有 16 毫秒的处理时间,其中包括将绘制基元上传到图形硬件所需的处理时间。

动画的每秒帧数 (FPS) 刷新率显示在Design 模式下工具栏上的FPS 字段中。

为提高 FPS 速率,应用程序开发人员应

  • 尽可能使用异步、事件驱动编程。
  • 使用工作线程进行重要处理。
  • 切勿手动旋转事件循环。
  • 切勿在阻塞函数中每帧花费超过几毫秒的时间,以免跳帧对用户体验造成负面影响。

有关在设备上预览用户界面的更多信息,请参阅在设备上预览Qt Quick 用户界面

剖析用户界面代码

您可以使用 QML ProfilerQt Creator 来查找用户界面中典型性能问题的原因。例如,您的用户界面可能很慢、反应迟钝或卡顿。通常,此类问题是由于在太少的帧中执行了太多的 JavaScript 所造成的。在 GUI 线程继续运行之前,所有 JavaScript 必须返回,如果 GUI 线程尚未准备就绪,帧就会被延迟或丢弃。

一般来说,了解用户界面中的时间使用情况能让你关注实际存在的问题区域,而不是可能存在的问题区域。

确定哪些绑定运行得最频繁,或应用程序在哪些功能上花费的时间最多,就能决定是否需要优化问题区域,或重新设计应用程序的某些实现细节,从而提高性能。在没有进行剖析的情况下尝试优化代码,很可能只会带来微小而非显著的性能提升。

另请参阅 如何设计Qt Quick UIQt Quick UI 设计设计Qt Quick UIProfiling QML 应用程序

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.