8

所需外观

我希望为我的应用程序制作一个工具栏,其中包含一些简单的按钮,每个按钮都有一个单色图标。下面是一些类似于我正在尝试实现的工具栏按钮的示例,来自 Mail 的撰写窗口:

邮件撰写窗口工具栏按钮

请注意,这些按钮具有一致的大小、内部填充、填充和阴影。这是整个 macOS 中非常一致的样式,出现在 Mail、Safari、Finder 等中。这让我怀疑有一个标准化的 UI 组件来创建此类按钮。

如果我使用分段控件,每个按钮看起来都是正确的,每个图标都被正确填充:

分段控制

现在我想添加与样式匹配的单个按钮。

尝试 1

我的第一次尝试是在工具栏上添加一个“按钮”(NSButton):

这导致一个宽按钮有点太短,并且没有与分段控件对齐:

尝试 1

尝试 2

我的第二次尝试是使用分段控件,只有 1 个分段。

这导致按钮的形状、大小等正确,但相对于标签偏离了中心。

尝试 2

当然,我可以手动调整按钮以匹配目标,但我觉得我错过了一些东西。创建这些标准按钮的正确方法是什么?

4

1 回答 1

9

这实际上很容易做到,而且你已经很接近了。你可以使用NSButton它。请注意,它有不同的样式(定义在 中NSButton.BezelStyle)可供选择。默认是在窗口和模式中使用的。但是对于工具栏,要匹配分段控件和搜索栏的样式,可以选择样式.texturedRounded

您还可以通过 Interface Builder 设置样式。请注意,您必须选择按钮本身,而不是它周围的工具栏项目。

在此处输入图像描述

要获得正确的大小,您似乎在工具栏项中设置图标,而不是按钮本身。

这是我的结果:

在此处输入图像描述

在此处输入图像描述

于 2017-09-09T13:16:35.343 回答