objective-c - 以编程方式调整 NSSplitView 的大小

标签 objective-c cocoa xcode appkit nssplitview

我曾经使用并喜欢 RBSplitView,但是我未能以编程方式重新实现它,因为某个版本的 xcode 不再支持 IB 插件。

因此我又开始使用 NSSplitView。 NSSplitView 可以满足我的需要,问题是 NSSplitView 的自动保存功能坏了。所以我决定自己实现它。

我现在正在做的事情是调整 NSSplitView 的 1 个 subview 的大小。

调整 NSSplitView 大小的正确方法是什么? - setPositionOfDivider:itIndex: 应该是要走的路(还没有尝试过),但是我不知道如何获得分隔线的当前位置。

-- 提前致谢

最佳答案

根据我的经验,NSSplitView 讨厌你并希望你受到伤害。 RBSplitView 好多了,值得 IMO 为编程布局而头疼(我已经对 ShortcutRecorder IB 插件如此着迷,以至于我永远不会回到 IB 插件)。

也就是说....

据我所知,确定分隔线当前位置的唯一方法是查看 subview ,找到分隔线的 View ,获取它的框架,并计算出它的位置,同时牢记 dividerThickness。您必须编写该代码是疯狂的,但代码并不是那么困难,您可以将其归入一个类别。

或者在您还可以的时候返回到 RBSplitView,如果您的需求变得复杂的话。

关于objective-c - 以编程方式调整 NSSplitView 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5195019/

相关文章:

objective-c - 通过 NSWindowController 用 NSButton 打开和关闭 NSWindow?

objective-c - Xcode 7 和 IOS 9 中的 SpriteKit 问题

cocoa - 关闭 Mac Objective C

ios - 我可以在我的应用程序中获取其他应用程序的打开关闭回调吗

cocoa - 以动态方式摆脱 NewApplication?

ios - 更新配置文件和证书

ios - UIView 和 intrinsicContentSize

objective-c - 识别GCD线程

c - 为什么我得到 "Use of undeclared identifier ' malloc'”?

ios - XCode 5 vs XCode 6 动画变化?