【发布时间】:2014-12-09 15:19:58
【问题描述】:
NSTableView 声明了这个可选的委托方法:
- (CGFloat)tableView:(NSTableView *)tableView sizeToFitWidthOfColumn:(NSInteger)column;
实现它很容易,但是当您的表中填满 数千 个条目时,您会开始看到 性能问题,调用此方法会使应用程序 没有反应。
以下是有关实现该方法的文档说明:
如果您想控制列的宽度,请实施此方法 当用户双击调整大小分隔线时。默认, NSTableView 迭代表中的每一行,通过访问一个单元格 PreparedCellAtRow:column:, 并请求“cellSize”找到 使用合适的最大宽度。
对于大行数,进行蒙特卡罗模拟而不是对每一行进行交互。为了提高性能和准确的结果,它是 建议在使用大表时实现此方法。
所以我开始爬网,搜索“Monte Carlo Simulations”。
我现在对蒙特卡洛模拟是什么有了一个简单的了解, 但我不明白它如何适用于这个特定问题。
我的意思是,最大内容大小是完全随机的。它不遵循任何方程式或规则,它完全基于将插入单元格的内容,那么蒙特卡洛方法如何应用在这里,它将如何帮助我找到足够的内容大小?
【问题讨论】:
标签: cocoa nstableview montecarlo