2011-08-12 25 views
2

在新的10.7 Lion NSTableView中,您可以使用滑動動畫等動畫插入和刪除NSTableCellViews。 (我使用的是基於NSView的,而不是基於單元格的)。如何獲取NSTableView動畫委託事件?

現在,問題是,我想在完成那些單元動畫時做某些事情,除非我不確定在哪裏設置代表爲此。有沒有一些標準的方法應該這樣做?我試過了:

[[myTableView animator] setDelegate: self]; 

但這似乎並不是我要找的。我假設我應該實施NSAnimationDelegate協議和尋找animationDidEnd: ...

有沒有其他方式我應該這樣做?

回答

1

你可以嘗試把像這樣的代碼觸發表視圖動畫的行之前(插入,刪除,移動等):

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

// inserts, deletes, etc. 

你有沒有發現任何其他解決辦法?

+0

不,可悲的是我從來沒有。我們也放棄了這種方法,因爲它超載了NSTableView太多^ _^...... – MarcWan