Unsolved 列表加载大量数据导致主界面卡顿几秒
-
已经使用模型加载数据到视图的方式,看到维基说明有方法提高效率但没说具体方法。不希望是一页加载一部分的形式处理。因此请教有什么好方法加载
-
自定义View和Model,实现一种懒加载的机制。
当滑动View的时候通知Model去加载一到两页(根据可视范围来确定每页的数据量)。
大数据量加载列表,无非就是翻页设计或者懒加载。。。 -
@Mihan 你认为Qt的model-view本身是不是虚拟列表机制
-
@Jacob-zhang 懒加载的性能次于虚拟列表,model-view应该是本身就是虚拟加载吧,也就是只加载视窗部分的item?
-
造成卡顿的原因可以考虑以下几个方面:
添加数据时,在主线程大量new QStandardItem造成阻塞。可以将生成数据放置于子线程或利用qt concurrent。注意qobject不是线程安全的,不要在其他线程操作model,应该在替他线程生成好QStandardItem数据集合,在主进程添加到model中。