切换文件夹时,Reeder Mac app动画列表如何?

str*_*nge 2 cocoa core-animation objective-c appkit xcode4

最初我的印象是它在插入/删除新行时使用表格行向上/向下动画,但我怀疑它是否正在这样做,因为即使列表中包含数千个项目也是如此流畅(否则会花费很多删除/插入工作的时间).

我是否正确地假设它只是在屏幕底部附加一个新的新闻列表实例,缩小上面的一个而底部的那个扩展以填满空间?

更新:

请看这个我的意思的视频:http://dl.dropbox.com/u/4960327/ReederAnim.mov

Nil*_*nch 5

我无法确切地告诉你Silvio Rizzi如何做到这一点,但正如你在回放中看到的那样,在显示的列表视图后面添加了一个列表视图,并且前面列表视图淡出(.alpha = 0.0;)而后面的列表视图它扩展了每行的高度.

当你逐帧酝酿它时,它变得非常清楚他做了什么,而且它确实不那么先进.但我不得不承认,白色的"乳白色"抛光界面看起来很整洁.

此外,您可以看到,在制作动画时,背景列表视图仅渲染前7个条目(希望通过将视图高度除以显示的单元格的平均高度来计算),使列表视图快速加载.然后,他可以在您开始滚动时加载扩展的单元格数组,或者在动画完成后开始在后台线程中加载.