1
Mail.app在激活时滑动的左下角有一个小活动窗格。我注意到它在动画期间重新定义了它上面的源列表(滚动条同时调整大小)。在OS X中设置动画视图大小
这怎么能实现?我还没有找到一种内置的方式来动画视图框架,就像你可以做的一样。
Mail.app在激活时滑动的左下角有一个小活动窗格。我注意到它在动画期间重新定义了它上面的源列表(滚动条同时调整大小)。在OS X中设置动画视图大小
这怎么能实现?我还没有找到一种内置的方式来动画视图框架,就像你可以做的一样。
您可以使用Core Animation。框架与核心动画改变的例子如下所示:http://www.macresearch.org/tutorial-intro-core-animation
您还可以使用NSViewAnimation做动画,如下所示:http://www.cocoadev.com/index.pl?AnimatedNSSplitView
的第三种方法是用自己GCD要做到这一点:
CGFloat duration = 2; //animation duration (seconds)
int N = 100; //animation fineness
CGFloat dt = duration/N; //time change
dispatch_async(dispatch_get_global_queue(0,0), ^{
for (int i = 1; i <= N; i++)
{
NSDate *future = [NSDate dateWithTimeIntervalSinceNow:dt];
[NSThread sleepUntilDate:future];
//calculate your new frame/splitview setup
dispatch_async(dispatch_get_main_queue(), ^{
//apply the new frame/splitview setup
});
}
});