我希望有一个隐藏标题的窗口,如Safari或Xcode中所示,但是使用标题栏附件视图而不是工具栏(我希望更多地控制排列和内容,而不是工具栏提供)。这可行吗?
我还没有能够让它发挥作用。如果我将我的窗口titleVisibility
设置为hidden
,而我的附件视图layoutAttribute
为bottom
,那么标题区域为空,除了标准关闭/最小化/缩放按钮,我的附件视图显示在该按钮下方。
如果我将layoutAttribute
更改为right
,那么我的附件视图会显示在我想要的标准按钮的右侧,但是底部被切断,因为标题栏不是'足够高,视图也不会随窗口水平调整大小。
有没有办法让这项工作?或者我必须使用工具栏吗?
更新:我使用Xcode的可视化调试器来检查Xcode自己的标题栏,发现它正在使用工具栏。调试器拒绝附加到Safari,所以我不知道它是如何处理新的选项卡按钮的。我想这个按钮是一个右侧固定的附件视图,其余的是一个普通的工具栏。 Safari的工具栏仍然是可自定义的,所以看起来很可能。
答案 0 :(得分:0)
我决定继续使用工具栏,它工作得很好。
NSTitleBarAccessoryController
子类,并将其从NSViewController
继承而来。toolbarWillAddItem:
中,我从笔尖实例化视图控制器并将其视图放入项目中。value
绑定到窗口的title
。window.titleVisibility = .hidden
将工具栏移动到标题区域。