如何获得NSTableView动画委托事件?

时间:2011-08-12 07:42:47

标签: objective-c cocoa animation osx-lion nstableview

在新的10.7 Lion NSTableView中,您可以使用滑动动画等动画插入和移除NSTableCellViews。 (我使用的是NSView,而不是基于单元格的。)

现在,问题是,我希望在完成这些单元格动画时做一些事情,除了我不知道在哪里设置委托。是否有一些标准的方法应该这样做?我试过了:

[[myTableView animator] setDelegate: self];

但这似乎不是我想要的。我假设我应该实施NSAnimationDelegate协议并寻找animationDidEnd: ...

还有其他方法我应该这样做吗?

1 个答案:

答案 0 :(得分:1)

你可以尝试在触发表视图动画(插入,删除,移动等)的代码行之前放置这样的东西:

[[NSAnimationContext currentContext] setCompletionHandler:^{
    [self tableViewAnimationDidFinish];
}];

// inserts, deletes, etc.

您是否找到了其他解决方案?