问题标签 [nssplitview]

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 投票
1 回答
3075 浏览

swift - XCode6 NSSplitViewController 持有优先级和 canCollapse 不起作用

我希望有人可以帮助我解决这个问题。

无论我做什么,无论是通过 IB 还是在代码中,我都无法使新的 NSSplitViewController 及其项目可折叠或保持其优先级。

尽管此视频另有显示,但无法从界面构建器中完成:https ://www.youtube.com/watch?v=ZIIuPo4F6tQ

我只能使 splitview 项目在代码中具有最小宽度,但这就是它。我测试了 Swift 和 Objective-C 的实现都没有运气。

这是我用swift写的:

这些都不起作用。我什至尝试将调用移动到函数底部的 super ,但运气不佳。

我想知道是否有人已经确定了解决方案,或者我做错了什么?

0 投票
2 回答
2335 浏览

macos - 如何使用 3 个窗格为 NSSplitView 配置自动布局约束

我想实现一个类似邮件的 NSSplitView ,这样当拖动分隔线 0 时,它会推动分隔线 1(压缩子视图 2,而子视图 1 的宽度是固定的)。

到目前为止,我没有成功使用具有自动布局的单个 NSSplitView 成功地做到这一点。

我试着用仪器检查问题。看起来,在某个点之后(屏幕截图中的#783),约束没有足够高的优先级来继续推动。

在此处输入图像描述

你之前有成功过​​类似配置的 NSSplitView 吗?

或者,一般来说,一些建议来进一步调试这个问题?

有人建议使用嵌套的 NSSplitView 来实现这种行为。但我想检查如何使用单个 NSSplitView 来完成。(看起来“Notes”应用程序是用一个 NSSplitView 完成的)

感谢负载

账单

我的测试代码在这里

0 投票
2 回答
2493 浏览

objective-c - OSX 10.10 中使用 Xcode 6 的 NSSplitViewController

根据 NSSplitViewControllers 上的文档,关联的 NSSplitView 使用 NSSplitViewController 作为其委托。特别是在文档中,“拆分视图控制器充当其拆分视图对象(管理分隔符的对象)的委托。如果您覆盖拆分视图委托方法,您的覆盖必须调用 super。”

我在界面生成器中实现了一个 NSSplitViewController 并给了它一个类。但是,从未调用过任何 splitView 委托。此外,如果我只是做一些类似吐谁 splitView 委托 [ NSLog (@"%@", self.splitView.delegate); ],结果为“空”。但是,如果我在 IB 本身(通过将委托出口拖到 NSSplitViewController)或内部代码([self.splitView setDelegate:self];)分配委托,我会收到以下错误:

引发了未捕获的异常
SplitViewController 的 splitView 无法使用自动布局,因为 SplitViewController 覆盖了不兼容的委托方法。

我完全糊涂了。

0 投票
1 回答
788 浏览

macos - IB 中未显示 NSSplitView 持有优先级,为什么?

我很困惑,可以发誓我几天前在 IB 中设置了我的 NSSplitView 持有优先级,但现在它们似乎在 IB 中根本不可见。Does anyone else see holding priorities in the top left of Xcode's IB when the splitView is selected ?

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
193 浏览

objective-c - NSSplitView - 调整窗口大小时保留子视图宽度

我有一个NSSplitView覆盖我所有的窗户。

包含两个(NSSplitView垂直)子视图,一个挨着另一个。

当用户调整窗口大小时,我希望左侧的窗口保持不变。这怎么可能?


PS不是自动布局方式。

0 投票
3 回答
1821 浏览

macos - 为什么我的拆分视图会有这样的行为,我该如何解决?

我创建了一个显示两个视图的拆分视图控制器,如下所示: 在此处输入图像描述

当我编译它时,它给了我这个结果: 在此处输入图像描述

不幸的是,第一个视图不可见,我必须从窗口左侧拖动才能看到两个视图:
在此处输入图像描述

首先,为什么拆分视图会这样?为什么它从一开始就不是正确的尺寸?
如果我将此行添加到我的SplitViewController的 viewDidLoad() 函数中:

然后出现两个视图,大小相等,但我不明白adjustSubviews()函数究竟做了什么,我无法控制任何一个的位置。

如何以编程方式修复它?如何调整每个视图的大小?有没有办法在界面生成器中调整它?

谢谢你。

编辑:这个问题现在有 50 分的赏金

0 投票
1 回答
2803 浏览

macos - NSSplitView 起始尺寸的问题(故事板和 Swift)

我刚刚使用 Swift、Storyboards 和 Document 启动了一个简单的 Cocoa 应用程序。

我所做的唯一更改是将 Main.storyboard 中的默认视图控制器替换为拆分视图控制器。就子视图正确填充而言,一切都很好,除了一件事:当我启动应用程序时,分隔线始终位于窗口的最左侧。这是垂直拆分视图。(如果我改为水平,分隔线从最顶部开始。)

我曾尝试添加约束,但 IB 甚至不允许我向除子视图中的内容之外的任何内容添加约束。

我也尝试过使用 splitView.setPosition ofDividerAtIndex 但没有成功。

如何指定左子视图的宽度或分隔线的位置?

0 投票
1 回答
586 浏览

objective-c - 如何禁用对 NSSplitView 分隔符的可访问性支持?

我的应用程序中有一个NSSplitView。它的分隔线位置是固定的,用户不能左右拖动分隔线。现在我正在添加对可访问性的支持。使用 VoiceOver 时,用户可以选择并拖动分隔线。这打破了我的用户界面。我如何告诉 VoiceOver,它应该忽略分隔线?

我正在使用自 OS X 10.10 起可用的新辅助功能协议。

设置splitView.isAccessibilityElementor splitView.isAccessibilityEnabledtono不起作用。

谢谢你的帮助!

0 投票
3 回答
8327 浏览

xcode - 设置 NSSplitViews 的最小宽度

我有一段时间设置一个简单的拆分视图。第一个拆分视图已折叠。我需要为它设置一个最小宽度。我在网上看到的所有东西(NSSplitViewController/NSSplitView 很少见)都是用于 Objective-C 的,将所有东西都放在应用程序委托中,并使用 XIB。

场景如下:窗口控制器与 SplitView 控制器有一个 segue,它有两个拆分视图(2 个视图控制器)。

哪个对象需要有 NSSplitViewDelegate?

编辑:添加代码片段: 例如,我有这个:

还有更多我想念的吗?

谢谢

更新

根据下面的评论,我进行了更改,但现在我在 AppDelegate 的类定义上获得了 sigAbort。完整代码

视图控制器:

侧边栏视图控制器:

数据集视图控制器:

更新 我拿走了我的自定义 NSSplitViewController 类并创建了两个 NSSplitView 类,一个使用约束方法。现在,我看到了两个子视图,但它们比它们应该的要小得多:

在此处输入图像描述

有没有用 Swift 和 Storyboards 做到这一点?

0 投票
1 回答
144 浏览

cocoa - 为 mac OSX 开发类似 iPhoto 的可可应用程序

我计划开发一个 Mac OSX 应用程序,它的 UI 与 iPhoto 类似——左侧是面板,右侧是图像网格视图。我正在考虑使用 NSSplitView 创建两个面板并将 NSCollectionView 用于网格。

我想这一定是 Mac 应用程序非常流行和常见的 UI 模式。我是可可开发的新手。任何有经验的人都可以向我指出任何相关的可可代码示例和设计文档吗?

提前非常感谢。

注意