【问题标题】:How to "Skin" an application on Mac?如何在 Mac 上“换肤”应用程序?
【发布时间】:2010-10-08 13:28:36
【问题描述】:

我想为自己编写的应用程序设置皮肤,但不知道从哪里开始。有什么像 DirectShow (stardock.com)、DotNetBar etc..for Mac 我可以做到的吗? (我知道这些示例是针对 .NET 的,只是使用了一个参考点。

如果没有,是否有一些信息来源可以引导我走向正确的方向?

举个例子……看看SongGenie

【问题讨论】:

    标签: objective-c cocoa xcode macos


    【解决方案1】:

    我个人认为 SongGenie 是应用换肤/主题化的一个坏例子。
    窗户的顶部光泽效果过于夸张,整体主题对比过于刺眼,无法让人赏心悦目。

    以下是自定义主题 OS X 应用的一些简单经验法则:

    1. 不要这样做(除非真的没有办法)。
    2. 不要为了主题而设置 UI!
    3. 如果你必须这样做,那就让它变得微妙! (不要强迫用户重新学习你的 UI)
    4. 使您的主题与系统的整体风格相匹配。 (哑光与光泽等)
    5. 见 1。)

    特别是对于第 4 点)SongGenie 是一种最坏的情况:应用程序的风格(除了完全过度)与 OS X 相当无光泽(相对于 Windows 7 的光泽)外观不匹配。举个例子正确风格一致的主题采取Permute.app

    因此,如果您真的非常想(等等,如果您真的“必须”)进行主题化,那么请查看BGHUDAppKit,了解如何完成此类操作的技术起点。但请记住,这个项目有一些非常糟糕的性能优化。 (大量的方法调用冗余,几乎没有任何缓存或优化)

    再说一遍:不要这样做。除非您既是优秀的开发人员,又是更好的 UI 设计师。
    作为开发人员,后者的胜算不大。

    除了 BGHUDAppKit,您可能还想查看 BWToolKit 的(但很少)主题 HUD 控件。

    UI 设计之于应用程序就像排版之于打印/写作:

    »好的排版可能是一个好仆人,始终为您服务,但不引人注目、不显眼,但却是幸福、安静、流畅的先决条件。«
    Jan Tschichold

    原文:

    »Gute Typographie isist so, wie ein guter Diener gewesen sein mag: da und doch nicht bemerkbar;不为人知, aber eine Voraussetzung des Wohlbefindens、lautlos、geschmeidig。«
    Jan Tschichold

    编辑:由于 Xcode 4 缺乏对 IBPlugins 的支持,而 Apple 显然是 unwilling to bring them back at all(请参阅 Joshua Nozzi 的 cmets 或 Apple 的 NDA 直接影响 ADC 论坛),因此更有理由不为您的应用程序皮肤。

    【讨论】:

    • 感谢您的洞察和解释!在比较了这两个应用程序(SongGenie 和 Permute)之后,我现在看到了这一切的现实,正如您在引述中所说的那样(与主题有关),它根本不应该真正引人注目,而是它的延伸。也感谢您提供有关从哪里开始的链接!
    • 其他很好的例子是 AppZapper、iTunes(除了窗口控件)、Google Chrome 和 Pixelmator(尽管 HUD 样式可能不适合非 gfx 编辑器)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-01
    • 2017-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多