macos – 滚动时NSTableView非常迟缓

macos – 滚动时NSTableView非常迟缓,第1张

概述在我使用Core Data的OS X应用程序中,我的表视图在滚动时非常滞后,我只有大约100行……我正在使用 Cocoa绑定和NSArrayController在表视图中显示我的数据. 我只有一个具有13个属性的实体,但仍然表视图/滚动视图非常滞后. 是否存在导致该行为的常见错误/错误编码?我在滚动时的CPU使用率约为85%. 任何人都有任何想法为什么会这样?我正在使用Xcode 7发布的版本. 在我使用Core Data的OS X应用程序中,我的表视图在滚动时非常滞后,我只有大约100行……我正在使用 Cocoa绑定和NSArrayController在表视图中显示我的数据.

我只有一个具有13个属性的实体,但仍然表视图/滚动视图非常滞后.

是否存在导致该行为的常见错误/错误编码?我在滚动时的cpu使用率约为85%.

任何人都有任何想法为什么会这样?我正在使用Xcode 7发布的版本.

更新:

仪器看起来像这样(我第一次使用它):

更新2:我使用NSVisualEffectVIEw并覆盖allowVibrancy返回true所以我得到表视图替代行颜色就像在我的另一个项目Github- Debter

如果我为我的视图启用了核心动画层,它对滚动有很大的帮助,但是我的故事板开始做一些简单的东西,我不能再用任何UI相关的东西了.

解决方法 如果没有看到UItableVIEw委托和数据源的代码,很难知道确切的问题.

一些坏习惯是:

>从任何UItableVIEwDataSource方法或正在呈现UItableVIEwCell时从CoreData加载数据.
>在主线程上加载图像或在后台加载图像,而不将其缓存在本地存储上.
>对tableVIEwCellForIndexPath或其他数据源方法执行复杂 *** 作(如图像处理).

一些可能有助于您找到问题的问题:

>您使用的是NSFetchedResultsController吗?如果您的数据集很长(尽管您没有提到),它可能会提高性能.>你检查过线程数了吗?如果它太高,您可能希望使用NSOperationQueue来限制后台任务.

总结

以上是内存溢出为你收集整理的macos – 滚动时NSTableView非常迟缓全部内容,希望文章能够帮你解决macos – 滚动时NSTableView非常迟缓所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1015713.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存