.xib 是 macOS 和 iOS 中的界面设计文件,本质是一个 XML 文件,用于以可视化方式定义界面元素(窗口、视图、按钮等),由 Xcode 的 Interface Builder 编辑和管理。
.xib 是什么?
1、扩展名:.xib(Interface Builder 文件)。
2、内容:存储视图层级、控件属性、布局约束、类绑定信息等。
3、本质:一种 XML 格式的序列化 UI 定义文件。
4、生成:Xcode 可视化编辑器生成。
5、运行时:编译时会转换为 .nib,由系统加载为界面对象。
6、应用:iOS、macOS 项目中都可以使用(更常见于 AppKit)。

和其他构件方式比较
1、.xib:单个界面文件,可视化拖拽、快速构建,管理多个界面不方便、耦合重。
2、Storyboard:多个界面与跳转关系,可管理多个界面,大项目容易卡顿、不适合复杂逻辑。
3、纯代码:所有视图手写创建,结构清晰、可重用,上手稍难。
4、SwiftUI:声明式代码构建 UI,现代、响应式,不能直接用 .xib,与 AppKit 不完全兼容。
创建 .xib 项目
在Xcode中创建新的项目:

选择macOS – App。
在Interface中,选择“XIB”。

系统会创建XIB项目。

在访达中使用“文本编辑”访问 .xib 文件,典型结构为:
<?xml version="1.0" encoding="UTF-8"?>
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0">
<objects>
<object class="NSWindow" id="1">
<title key="title">My Window</title>
...
</object>
<object class="File's Owner" customClass="MyWindowController" id="2"/>
</objects>
</archive>
注意事项
.xib 不支持多个界面切换,适用于“一个界面”结构。
不适合 SwiftUI 项目(建议使用 NSHostingController + 代码)。
xib 文件必须绑定一个 “File’s Owner”,才能通过代码关联视图和控制器。
什么时候用 .xib?
1、AppKit 项目,需要一个简单对话框/设置窗口。
2、想快速可视化构建窗口界面,拖拽速度快。
3、不想写繁琐的布局代码,Xcode 可以帮忙完成。
4、SwiftUI + AppKit 混用时,嵌入已有 xib 控件,也可以桥接使用。
总结
.xib 是 Xcode 的界面构建文件,表示“一个独立的视图/窗口”。
搭配 NSViewController / NSWindowController 使用最常见。
SwiftUI 时代更推荐“用代码替代 .xib”。
对于 AppKit 老项目、某些复杂 UI 组件,仍然非常有用。