问题标签 [nstabviewcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2785 浏览

xcode - Xcode OS X Storyboards:如何获得对顶级“窗口内容”视图控制器的引用?

我有一个基本的 Cocoa 应用程序来试用 Swift 和 Storyboard。

该应用程序由 3 个由 管理的主视图组成NSTabViewController,它再次链接到主窗口的“窗口内容”关系。

NSSegmentedControl在窗口的工具栏中添加了一个在 3 个选项卡视图之间切换。

在主窗口控制器中,我为工具栏项添加了在选项卡之间切换的操作方法,但我不知道如何获取对选项卡视图控制器的引用以实际切换选项卡。

我尝试将我的操作方法添加到选项卡视图控制器,但这不起作用,因为如果选项卡视图控制器包含空视图,它可能不在响应者链中(这是一个错误吗?)。

作为一种解决方法,我在选项卡视图控制器中覆盖了 viewDidAppear()。在那里,我得到了 view.window.windowController 的句柄,并在实例变量中设置了对“self”的引用。这有效,但似乎不正确。应该有一种方法可以从窗口控制器到它的内容视图控制器......

窗口控制器和选项卡视图控制器生活在不同的场景中,我无法通过 IBOutlet 连接它们。此外,对于“窗口内容”关系,也没有在窗口控制器上调用任何 segue 方法。

故事板

0 投票
3 回答
3009 浏览

cocoa - NSTabViewController 忽略转换和标题传播设置

我正在尝试使用情节提要和新的 NSTabViewController 类为我的应用程序创建一个首选项面板。

我可以让它工作,但故事板中的过渡设置似乎被忽略了。它只是从一个选项卡跳到下一个选项卡,窗口的大小会立即改变。

我认为这可能取决于我是否使用自动布局,但是当我切换它时它似乎并没有改变过渡行为。

我还检查了“传播标题”设置。我曾期望它会采用选项卡项的标签或视图控制器的标题,并将其作为窗口标题传播,但它似乎没有这样做。

有人让这个工作吗?

这是我正在测试的一个简单示例应用程序:https ://www.dropbox.com/s/roxaplxy5gtlqns/Again.zip?dl=0

更新:感谢 Pierre,让这项工作得以实现。最后通过继承 NSTabViewController 来制作一个漂亮的转换首选项窗口,如下所示:

0 投票
1 回答
703 浏览

objective-c - Can NSTabViewItem button labels be resized?

If I add a number of NSTabViewItems to an NSTabViewController, the tab view item buttons are sized according to the length of the label text. With different texts for each label this can result in NSTabViewItem buttons that have vastly different sizes.

Is there a way to set the button sizes/widths to a specific size in IB? Can it be done dynamically in code?

0 投票
2 回答
2668 浏览

macos - 基于 NSSplitViewController 的应用程序几乎永远不会以正确的大小启动

我有这个应用程序,它使用 aNSSplitViewController作为根,并有一个 NSTabViewControllerconnected 作为它的 detailViewController。

此应用程序设置为以 1024x768 分辨率启动。左窗格应在 320x768 处启动,而右窗格(tabViewController 所在的位置)应在 704x768 处启动。

从我运行这个应用程序的 10 次开始,9 次它会以不正确的大小(大约 500x500)启动。另一个奇怪的事情是这个应用程序不应该是可伸缩的,但是如果你将鼠标悬停在窗口边框附近,你会看到光标指示缩放。

我希望它以正确的大小启动并且没有可扩展的选项。

这两个设置都在界面生成器上,但被忽略了。

您可以在此处下载演示该问题的示例项目。停止并运行项目几次以查看问题。

我该如何解决这个问题?

0 投票
0 回答
53 浏览

ios - Xcode 三选项卡项目与三个不同的项目

我想知道是否有人可以指导我正确的方向。

我在 Xcode 6.1.1 和 Objective C 上分别构建了三个不同的项目。我想将所有这三个项目放在一个下。

在此处输入图像描述

这个新项目由三个选项卡组成,每个选项卡都有一个项目。这三个项目都是独立运行的,不共享任何数据。

什么是最好的方法?

0 投票
0 回答
210 浏览

macos - 带有标签视图控制器的 NSVisualEffectView 使用情节提要

我在我的应用程序和TabViewController三个选项卡中使用故事板。当我放入NSVisualEffectView我的视图时它工作正常,但是当我移动我的窗口时,我的VisualEffectView开始消失了。

我的视觉效果设置是:在窗口后面,暗一个活动。我使用 IB 将它们放在我的视图中。

如果我只使用一个视图而没有TabViewController NSVisualEffectView工作就好了,但这会TabViewController引起麻烦。有人可以帮忙吗?

0 投票
1 回答
82 浏览

ios - Xcode 将 ViewController 提升为 TabViewController 不起作用?

这里有一个新手问题。

如果您最初在 Storyboard 上有一个视图控制器。

然后你想把它提升为一个 Tab View Controller。

为什么它不起作用,如果我将 View Controller 的继承自身份检查器更改为 TabViewController,它似乎不起作用。

我的意思是,如果我尝试创建对 TabViewController 的 viewControllers 引用列表的 segue 引用,它就不起作用,因为 viewControllers 不可用。

我想我的问题是,除了更改该控制器对象的基类以使其工作之外,还有更多的东西吗?

谢谢!

0 投票
0 回答
149 浏览

macos - NSTabViewController 子类似乎不适用于 IBInspectable

IBInspectable 是否适用于 NSTabViewController 的子类?这些属性似乎显示在 Interface Builder 中(并且可以设置),但是在运行我的应用程序时为零。我拥有的基本代码是

如果我从 NSViewController 继承了 XYViewController,则正确分配了 IB 中设置的属性。为了让 IBInspectable 与 NSTabViewController 一起工作,我还需要做些什么吗?我在 Yosemite 10.10.5 上使用 XCode 7.0.1。谢谢

问候

乔治

0 投票
1 回答
544 浏览

xcode - NSTabView 在 Interface Builder 中带有重复的按钮?

如果我将选项卡视图控制器拖到 OS X 应用程序的情节提要中,选项卡视图按钮似乎行为不端。你能帮我理解发生了什么吗?

这是一个新项目的最小示例,我只是用新的选项卡视图控制器替换了默认的空视图控制器:

Interface Builder 中的最小设置

默认情况下,突出显示的 Tab View 显示为No Shadow Tab View,这意味着 Tab View 的样式Tabless在 Attributes Inspector 中。

场景列表中的选项卡视图下方还有两个选项卡视图项。

如果我构建并运行,结果如下所示:

的结果

选项卡控件可见,但选项卡视图没有边框。似乎显示的选项卡按钮实际上是两个额外的选项卡视图项,而不是选项卡视图本身的本机按钮。

如果我将 Tab View 的样式更改为Top Tabs而不是 default Tabless,我会得到一个边框,但重复的选项卡按钮:

重复按钮

如果我将其更改为Tabless With Bezel,则边框位于选项卡按钮下方,而不是正确地位于按钮下方:

挡板位置错误

我想不通。为什么要从两组选项卡按钮开始(默认情况下隐藏“真实”一组)?这两个额外的 Tab View Item 似乎完全是多余的,但它们不能被删除。

使用 Interface Builder 和 Tab View Controller 时,有没有办法让标签栏具有适当的边框?

0 投票
1 回答
308 浏览

swift - NSTabViewController - 如何创建自定义过渡?

我有一个NSTabViewController附有 6 个标签(NSViewControllers)的。在 IB 中,我可以从一些预定义的转换中进行选择,但我不喜欢其中任何一个。所以我的问题是:我怎样才能进行自己的过渡?

PS:我在我的项目中使用 StoryBoards。