QML性能优化

可以参考官方提示https://doc.qt.io/qt-5/qtquick-performance.html

大牛翻译的https://blog.csdn.net/xqhrs232/article/details/76128633

1.图片

对于本地图片采用异步加载asynchronous设置为true(网络图片都是异步加载)
显式来源大小,如果应用程序加载大图像但是将其显示在一个小尺寸元素中,请将“sourceSize”属性设置为要渲染的元素的大小,以确保图像的较小比例版本保留在内存中,而不是大的。请注意,更改sourceSize将导致重新加载图像。

避免运行时组合,还要记住,通过在应用程序中提供预先组合的图像资源(例如,提供带阴影效果的元素),可以避免在运行时进行合成工作。

避免平滑图像,image.smooth仅在需要时启用。它在某些硬件上较慢,如果图像以其自然大小显示,则没有视觉效果。

绘画,避免多次涂抹同一区域。使用Item作为根元素而不是Rectangle以避免多次绘制背景。

2.配置

使用Qt Quick Compiler
  只需要再PRO文件中添加一行:CONIFG += qtquickcompiler

(不确定好用不好用)

3.事件

尽可能使用异步,事件驱动编程,不要使定时器轮询

4.View的设置

GridView 和 ListView 可以开启cacheBuffer 

5.ListModel添加大数据

ListModel提供append方法添加数据。可以采用一次添加多个数据。添加大数据也很快。

 

var tv = {name: "Apple2xxxxxxxxxxxxxxxxxxxxxxxxx","cost": 1.95}
var obj =[tv,tv,tv,tv,tv,tv,tv,tv,tv,tv];
for (var i = 0; i < 1000*100*10; ++i)
	listmodel.append(obj);
	
好于	listmodel.append(tv);

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值