4

我正在构建一个 Lion Mail.app 风格的 Mac 应用程序。作为其中的一部分,我正在尝试为 Mail.app 中的工具栏创建一个类似的工具栏,但我似乎无法让工具栏按钮中的图像垂直居中。

查看 Mail.app 工具栏,我看到一系列带有居中图标的漂亮按钮:

在此处输入图像描述

但是当我去界面生成器时,我似乎无法重新创建相同的按钮。我得到的是:

在此处输入图像描述

我尝试做的是,在 Interface Builder 中:

  1. 创建一个新窗口
  2. 将 NSToolbar 添加到该窗口
  3. 使用 Style - 'Push'、Image - 'Envelope'、Position - 'NSImageOnly'、Scaling - 'Proportionally Down' 将 NSButton 添加到工具栏

如您所见,该图标显然没有像 Mail.app 工具栏中的按钮那样垂直居中。

有人有什么想法吗???

目前我正在使用 XCode 4.2 并使用 Interface Builder 布置这个按钮。我试图通过仅将图像添加到按钮而不为每个项目绘制按钮来构建工具栏按钮,即绘制边框和图标。

任何帮助将不胜感激,因为这让我有点发疯。

在此先感谢-AYAL

4

3 回答 3

10

事实证明,这个问题的答案比我预期的要简单得多。经过大量的咬牙切齿、拉扯头发和旋转像素后,我找到了解决方案。

而不是使用“推”按钮,我只需要切换到“圆形纹理”按钮。一旦我这样做了,我添加到按钮的任何图像都很好地居中。接下来,我只需要手动缩放图像以使其看起来正确。

Mail.app 工具栏的配方如下:

  1. 将按钮添加到工具栏
  2. 将按钮样式设置为“圆形纹理”
  3. 设置按钮的图像
  4. 将位置设置为“NSImageOnly”
  5. 将按钮大小设置为 40 x 25 以及 ToolbarItem 的最小和最大尺寸

结果是一个看起来与 Mail.app 工具栏非常相似的工具栏。

谢谢大家-AYAL

于 2012-01-03T20:40:19.097 回答
0

一种方法是让您的图像实际上是按钮,即占据按钮的所有画布。您将不得不使用按钮的 setBordered: 方法,以便不绘制按钮的边框。

于 2011-12-23T20:48:50.993 回答
-4

您可以在 gimp 或 photoshop 中制作按钮图像,然后将其用作按钮的背景或图像。

我觉得你会说“这就是我正在做的事情”。也许您制作了小邮件图标,但我的意思是让您制作整个按钮、轮廓和所有内容,然后将其用于按钮图像。说得通?

像这里,就用这个作为背景 在此处输入图像描述

于 2011-12-23T20:53:54.897 回答