GTK4 UI规范HIG介绍
GNOME平台也有人机界面规范,名字几乎和苹果一样,叫 HIG——GNOME Human Interface Guidelines。官网是 https://developer.gnome.org/hig/,这就是 GTK4 生态里对标 Apple HIG / Microsoft Fluent 的那份官方设计规范。
GTK4 和 HIG 的关系
GTK4 是控件库(toolkit),HIG 是设计规范。
HIG 是「为使用 GNOME 开发平台创建软件的人准备的首要设计文档」,并且「应与近期 GNOME 平台版本配合使用,特别是 GTK 4 和 Libadwaita」。所以做 GTK4 应用时,GNOME HIG 就是该遵循的那套规范。
HIG在2021 年重写后,每一个设计模式都对应一个真实存在的 GTK / libadwaita 控件,并直接给出 API 文档链接。规范里写的东西都能直接实现,不需要自己造轮子或拼装自定义 UI。
比如它明确给了"新旧控件替换表":
| 设计模式 | 旧写法 | 新推荐 |
|---|---|---|
| 下拉列表 | GtkComboBox 或自己拼 |
GtkDropDown |
| 标签页 | GtkNotebook |
AdwTabBar |
| 空状态占位 | 手写 | AdwStatusPage |
| 设置窗口 | 手写 | AdwPreferencesWindow |
| 大列表/网格 | 老式 TreeView | GtkListView / GtkColumnView / GtkGridView |
术语也跟着平台改了:原来叫 "grids" 的现在叫 "flow boxes","presentation dialogs" 改叫 "secondary windows"。
内容结构
HIG 分五大块:
- Design principles — 设计原则,新人的最佳入口
- Resources — 可用的设计工具和素材
- Guidelines — 通用约定:文案怎么写、图标怎么用、应用身份(命名/图标)、各类输入处理
- Patterns — 可组装的界面元素,按 容器 / 导航 / 反馈 / 控件 四类组织(按钮、文本框、通知、视图切换器等都在这里)
- Reference — 标准键盘快捷键和 UI 配色
无障碍(accessibility)也已经并入主规范,不再单成一册。
实际开发建议
如果你在做 GNOME 应用,正确的技术栈是 GTK4 + libadwaita。libadwaita 1.0 在 2021 年底发布后,HIG 就同步更新过一版来做适配。libadwaita 本质上是把 HIG 的规范"固化"成了现成控件——用 AdwHeaderBar、AdwPreferencesWindow、AdwViewSwitcher 这些,你默认就是 HIG 合规的,不用手动调间距、字号、图标风格。
配套还有一组设计小工具:App Icon Preview、Symbolic Preview、Icon Library、Color Palette、Typography,做图标和字体时挺省事。另外 gtk4-demo 这个演示程序里每个控件都有可运行示例,HIG 的很多页面会直接指过去。
如果你的 GTK4 应用是跨平台的、并不跑在 GNOME 上(比如要发给 Windows/macOS 用户,或主要面向 KDE),那 HIG 里偏 GNOME 风格的约定——比如 header bar 取代传统菜单栏、主菜单放右上角——就要斟酌一下,这类设计在 GNOME 里是标准,换到其他环境用户未必习惯。规范本身也强调它"不做硬性规定(not prescriptive)",给设计者留了创造空间。