如何检测NSTableView中的行数是否已更改?

e.J*_*mes 2 cocoa

我有一个自定义的NSTableView子类,它绑定到一个异步更新的数据源(NSArray).将项目添加到数组时,行会自动添加到tableview中.真棒!

我的问题是:如何检测到这种魔法已经发生,以便我可以执行与自定义tableview显示相关的其他一些任务?是否有一个方法可以在我的子类中覆盖,当tableview更新时将调用该方法?

Mar*_*eau 5

您不需要子类化NSTableView来根据行数更改其高度.在您的控制器中,只需使用KVO监控数据阵列,并enclosingScrollView在添加或删除行时调整tableview的scrollview的框架大小(您可以使用它).我之前使用过这种技术,效果很好.您可以使用tableview rowHeightintercellSpacing方法来计算帧的高度.