macOS(AppKit)UI 类清单

下面给你一份尽量“完整 + 可用 + 按职责分类”的 macOS(AppKit)UI 类清单
⚠️ 先说明一件实话:

AppKit 的 UI 类非常多(200+),严格意义上的“所有”包括内部类和极少用类。
下面这份是:公开 API + 实际开发中 99% 会遇到的 UI 类,并且按体系分组,不是杂乱罗列。

如果你真的是做 macOS 客户端 / 股票软件 / 工具类 App,这份就是你需要的“UI 类地图”。


一、基础视图体系(所有 UI 的根)

1️⃣ NSResponder

  • 事件响应链的根
  • 键盘 / 鼠标事件
NSResponder
 └── NSView
      └── NSControl

2️⃣ NSView ⭐⭐⭐⭐⭐

所有 UI 的基类

常用属性:

frame
bounds
subviews
superview
wantsLayer

二、控制器(UI 管理核心)

3️⃣ NSViewController ⭐⭐⭐⭐⭐

  • 页面控制器

4️⃣ NSWindowController ⭐⭐⭐⭐

  • 窗口控制器

5️⃣ NSSplitViewController

6️⃣ NSTabViewController

7️⃣ NSPageController


三、窗口 & 面板类

8️⃣ NSWindow ⭐⭐⭐⭐⭐

9️⃣ NSPanel

  • 浮动窗口
  • 设置面板

🔟 NSAlert

  • 系统弹窗(⚠️不是 View)

四、控制类(NSControl 体系)

NSControl
 ├── NSButton
 ├── NSTextField
 ├── NSSlider
 ├── NSStepper
 ├── NSSegmentedControl
 └── NSColorWell

常用控制类

  • NSButton
  • NSTextField
  • NSSlider
  • NSSegmentedControl
  • NSSwitch(macOS 10.15+)
  • NSLevelIndicator
  • NSPopUpButton
  • NSComboBox
  • NSDatePicker

五、文本系统(非常庞大)

文本显示 / 编辑

  • NSTextField
  • NSTextView
  • NSText
  • NSTextContainer
  • NSLayoutManager
  • NSTextStorage

文本辅助

  • NSFont
  • NSParagraphStyle
  • NSAttributedString
  • NSMutableAttributedString

六、列表 / 集合 / 数据展示(你用得最多)

1️⃣1️⃣ NSTableView ⭐⭐⭐⭐⭐

  • 表格 / 列表

配套:

  • NSTableColumn
  • NSTableCellView
  • NSTableRowView

1️⃣2️⃣ NSOutlineView

  • 树结构(文件夹 / 分类)

1️⃣3️⃣ NSCollectionView ⭐⭐⭐⭐

  • 网格 / 卡片

配套:

  • NSCollectionViewItem
  • NSCollectionViewLayout
  • NSCollectionViewFlowLayout

七、滚动 & 容器

1️⃣4️⃣ NSScrollView ⭐⭐⭐⭐⭐

  • 几乎所有大 UI 都包它

1️⃣5️⃣ NSSplitView

  • 左右 / 上下分栏

1️⃣6️⃣ NSTabView

  • 老式 Tab

八、工具栏 & 导航

1️⃣7️⃣ NSToolbar

1️⃣8️⃣ NSToolbarItem


自定义导航常用

  • NSStackView ⭐⭐⭐⭐
  • NSVisualEffectView(毛玻璃)

九、菜单系统(macOS 特有)

1️⃣9️⃣ NSMenu ⭐⭐⭐⭐⭐

2️⃣0️⃣ NSMenuItem


十、图形 / 绘制 / 动画

绘图

  • NSBezierPath
  • NSGraphicsContext
  • NSColor
  • NSImage
  • NSImageView

Core Animation

  • CALayer
  • CATextLayer
  • CAShapeLayer
  • CAAnimation

十一、反馈 & 弹出 UI

2️⃣1️⃣ NSPopover ⭐⭐⭐⭐

2️⃣2️⃣ NSSharingServicePicker

2️⃣3️⃣ NSColorPanel

2️⃣4️⃣ NSFontPanel

2️⃣5️⃣ NSSavePanel

2️⃣6️⃣ NSOpenPanel


十二、辅助 UI & 特殊控件

  • NSProgressIndicator
  • NSPathControl
  • NSRulerView
  • NSBox
  • NSGridView
  • NSClipView

十三、状态栏 / 系统 UI

2️⃣7️⃣ NSStatusBar

2️⃣8️⃣ NSStatusItem


十四、约束 & 布局

  • NSLayoutConstraint
  • NSLayoutGuide
  • NSLayoutAnchor

十五、触控 & 输入事件

  • NSEvent

  • NSTrackingArea

  • NSGestureRecognizer

    • NSClickGestureRecognizer
    • NSPanGestureRecognizer
    • NSMagnificationGestureRecognizer

十六、视觉效果(现代 macOS UI)

  • NSVisualEffectView ⭐⭐⭐⭐⭐
  • NSAppearance
  • NSAppearanceNameDarkAqua

十七、废弃 / 过时但你可能会看到的

  • NSMatrix(⚠️老项目)
  • NSBrowser(Finder 风格,极少用)
  • NSDrawer(已废弃)

十八、UI 类「层级总览图」

NSResponder
 ├── NSWindow
 └── NSView
      ├── NSControl
      │    ├── NSButton
      │    ├── NSTextField
      │    └── NSSlider
      ├── NSScrollView
      ├── NSTableView
      ├── NSCollectionView
      ├── NSImageView
      └── NSVisualEffectView

十九、给你一个实战建议(很重要)

如果你在做 macOS 股票 / 工具 / IDE 风格 App

✅ 真正常用的 UI 类 不超过 20 个
✅ 核心是:

  • NSWindowController
  • NSViewController
  • NSView
  • NSStackView
  • NSTableView / NSCollectionView
  • NSScrollView
  • NSButton / NSTextField
  • NSVisualEffectView
  • CALayer

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容