我试图模仿Xcode的工具栏控件来显示/隐藏导航器和检查器:
...但没有底部窗格(仅左侧和右侧:两段)
我从Xcode的UI中截取了图标,并在图像编辑应用程序中跟踪它们。左窗格的资源是:
@ 1X:
(20x20 @ 72 dpi)
@ 2倍:
(40x40 @ 72 dpi,虽然使用20x20 @ 144 dpi似乎没有区别)
右窗格对应部分相同,但水平翻转。
所有资源都存储在资产目录中,如下所示:
我在工具栏上删除了一个分段控件,用于在其中创建一个带有分段控件的工具栏项,并为每个段设置图像属性(0和1)。
两个片段的图像缩放设置为"按比例缩小"。段控制具有段宽度"固定"检查,两个段的宽度为48。工具栏项目的最小尺寸为(83 x 25),最大尺寸为(100 x 28)。
图标在故事板(Interface Builder)上正确显示。
但是,当我运行该应用时,我无法正确显示图标图像。
地球上发生了什么?
我已经放了sample project on GitHub来重现这个问题。
编辑:为了确保,我使用cartool命令行实用程序从已编译的应用程序二进制文件中提取资源(如this answer中所述),并且所有4个图像都以正确的大小... < / p>
解决方案:正如下面的Ivan's answer所示,我转而使用矢量图形(PDF)作为图标。我下载了Acorn的试用版,并以1x大小重新创建了我的图标,然后以PDF格式导出。
为了避免在运行时缩小@2x的大小,我必须确保编辑器中的所有坐标都是整数,并且还要选中&#34; Snap to pixels&#34;在每个形状图层的“矢量形状”检查器中:
(快乐结局)
$ git commit -m "Fix toolbar icons for good (PDF)"
答案 0 :(得分:1)
根据我的经验,在工具栏中使用位图很麻烦。您可以尝试针对确切建议的解决方案,以避免出现一些问题:https://developer.apple.com/macos/human-interface-guidelines/icons-and-images/custom-icons/
然而,最干净的方法是使用矢量(pdf)图标,因为它们只是按预期工作。