我正在尝试使用故事板和新的nstabviewController类为我的应用程序创建一个首选项面板.
我可以让它工作,但故事板中的过渡设置似乎被忽略.它只是从一个选项卡跳转到下一个选项卡,窗口的大小会立即更改.
我以为这可能取决于我是否使用autolayout,但是当我切换它时,似乎没有改变过渡行为.
我也有’传播标题’设置检查.我曾经期望它会选择标签项的标签或视图控制器的标题,并将其作为窗口标题传播,但它似乎不这样做.
有人有这个工作吗?
这是一个简单的示例应用程序,我正在测试:https://www.dropbox.com/s/roxaplxy5gtlqns/Again.zip?dl=0
更新:感谢Pierre的工作.通过对nstabviewController进行子类化,结束了一个很好的转换首选项窗口,如下所示:
@implementation MCPreferencesTabViewController -(void)tabView:(nstabview *)tabView willSelectTabViewItem:(nstabviewItem *)tabViewItem { [super tabView:tabView willSelectTabViewItem:tabViewItem]; nstabviewItem *currentTabItem = tabView.selectedTabViewItem; currentTabItem.view.hidden = YES; tabViewItem.view.hidden = YES; NSWindow *window = self.view.window; NSSize contentSize = tabViewItem.view.fittingSize; NSSize newWindowSize = [window frameRectForContentRect:(CGRect){CGPointZero,contentSize}].size; NSRect frame = [window frame]; frame.origin.y += frame.size.height; frame.origin.y -= newWindowSize.height; frame.size = newWindowSize; [self.view.window setFrame:frame display:NO animate:YES]; } - (void)tabView:(nstabview *)tabView didSelectTabViewItem:(nstabviewItem *)tabViewItem { [super tabView:tabView didSelectTabViewItem:tabViewItem]; tabViewItem.view.hidden = NO; } @end
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。