【发布时间】:2011-09-07 21:59:41
【问题描述】:
我有以下代码块。
NSRect windowFrame = [window frame];
windowFrame.size.height = [view frame].size.height + WINDOW_TOOLBAR_HEIGHT;
windowFrame.size.width = [view frame].size.width;
windowFrame.origin.y = NSMaxY([window frame]) - ([view frame].size.height + WINDOW_TOOLBAR_HEIGHT);
if ([[contentView subviews] count] != 0)
{
[[[contentView subviews] objectAtIndex:0] removeFromSuperview];
}
[window setFrame:windowFrame display:YES animate:YES];
[contentView setFrame:[view frame]];
[contentView addSubview:view];
它将框架切换到新视图,但我从来没有得到缩小/增长的动画。如果我把它放在 [window] 之前
NSLog([NSString stringWithFormat: @"%.2f", windowFrame.size.height]);
我得到不同的尺寸.. 这是输出
2011-09-07 14:13:02.418 Spark[29919:903] 492.00
2011-09-07 14:13:03.610 Spark[29919:903] 580.00
2011-09-07 14:13:05.955 Spark[29919:903] 492.00
2011-09-07 14:13:08.339 Spark[29919:903] 255.00
不知道我错过了什么。
谢谢!
编辑
我添加了一个简单的项目来查看我的问题
【问题讨论】:
标签: objective-c cocoa nswindow