【发布时间】:2012-11-20 12:24:48
【问题描述】:
我用 tableView 控制器填充了我的NStableView,它工作正常。我只想知道为什么每当用户将鼠标悬停在表格视图中的特定单元格上时,每次我获取数据(在表格单元格中呈现)时,它就会开始在控制台中显示数据。
我发现这个- (NSCell *)tableView:(NSTableView *)tableView dataCellForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row 每次都会调用,我使用仪器进行堆栈跟踪,这种方法占用了大量内存。
有什么办法可以阻止这个方法每次都绘制数据。
【问题讨论】:
-
只需维护一个标志,用于观察何时手动刷新表格视图
-
如何以编程方式检查用户是否将鼠标悬停在 NSTableView 上?每当我将 curosr 放在 tableView 上时,每次都会调用 dataCellForTableColumn。
-
你现在开始工作了吗?
标签: macos cocoa nstableview nstableviewcell