【发布时间】:2015-04-12 13:03:43
【问题描述】:
在观看了来自 WWDC 的关于新 UI 高级功能的会议后,我正在尝试在 OSX 10.10 中使用带有新 Vibrant 主题的 NSTextView。我的文本视图没有放置在标题栏附近,因此我已将内容视图设置为完全大小,以便我可以将文本视图放置在标题栏下方。
我的问题是我在文本视图和标题栏之间有一个NSView,它应该放在标题栏的正下方,但我无法获得自动布局来为我执行此操作。在视频中,他们使用NSWindow 中的新contentLayoutGuide 属性提供了此示例代码:
NSLayoutConstraint *topEdgeConstraint = [NSLayoutConstraint constraintWithItem:myView attribute: NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:window.contentLayoutGuide attribute:NSLayoutAttributeTop];
但是,每当我尝试安装 Xcode 给我的约束时,我都无法让它工作
无法在视图上安装约束。约束是否引用了视图子树之外的内容?这是违法的。
我知道示例中使用的窗口属性不在视图的子树中,因为视图位于窗口内,但是我应该如何访问 contentLayoutGuide 属性?
目前我正在尝试在子类NSWindow 的-awakeFromNib 方法中添加约束。可能是错误的方法?
提前致谢
【问题讨论】:
标签: objective-c xcode macos cocoa osx-yosemite