提升生产力:每个 iOS 开发者都应该知道的 10 个 Xcode 技巧

欢迎关注我的公众号:OpenFlutter,感恩

在和 Swift、UIKit 以及现在的 SwiftUI 打交道多年后,我总结了一套在日常工作中真正能提升效率的小技巧。相信我,一旦你用了,就再也回不去了。

1. 代码片段库(⌘ + ⇧ + L)

我们总会写一些重复的代码,比如日志语句、SwiftUI 的样板代码、UserDefaults 的辅助函数,或者 weak self 捕获块等......这些都会累积起来。 与其一遍又一遍地敲相同的代码块,不如创建你自己的代码片段 。 选中代码 → 将其拖动到代码片段库 (右侧面板)。 为其设置一个快捷键 ,比如 logd → 它就会展开成你的调试日志代码。 下次,你只需输入 logd 并按下 Tab 键即可。 👉 结果:原本需要敲击 20 次的键盘,现在只需 4 次。


2. 多光标编辑(⌥ + 点击)

当你需要修改一个变量或修饰符时,不必再手动逐行编辑。 按住 Option (⌥) 键并点击多个位置,你就可以同时在多个地方进行输入。

例如:

swift 复制代码
Text("Hello")
    .font(.title)
    .foregroundColor(.blue)

Text("World")
    .font(.title)
    .foregroundColor(.blue)

想把两行代码中的 .blue 都改成 .red 吗?多光标编辑一步就能搞定。


3. 跳转到定义(⌘ + 点击)

这个功能被大大低估了。当你看到任何类、函数或变量时,只需按住 Command 键并点击,Xcode 就会直接带你到它的定义位置。

这个小小的操作看似微不足道,但在调试或学习新代码库时,它能帮你省去无数的滚动和搜索时间。

专业提示 :使用 ⌘ + ⌥ + 点击,可以快速弹出一个小窗口,而无需离开当前文件。


4. 仅显示错误(⇧ + ⌘ + M)

大型项目意味着问题导航器里充斥着无休止的警告和杂乱信息。

按下 Shift + Command + M → Xcode 只会显示当前文件中的错误

再也不用为了找到真正的问题,而在一大堆废弃警告中翻找了。


5. 在作用域内全部编辑(⌃ + ⌘ + E)

当你重命名一个变量时,别再手动操作了。

将光标放在变量上 → 按下 Control + Command + E → Xcode 会高亮显示作用域内的所有引用。

只需输入一次,所有引用都会立即重命名。

这就像是无需打开菜单,就能拥有重构功能一样。


6. 在 Finder/终端中显示

在导航器中右击任何文件 → 选择 "Show in Finder"(在 Finder 中显示)或 "Show in Terminal"(在终端中显示)。

这个功能在以下情况下非常方便:

  • 你需要将某个资源拖到另一个项目中。
  • 你想快速 cd 进入该目录并运行 Git 命令。

7. 功能不止于暂停的断点

断点不仅仅是为了暂停代码运行。它们还可以:

  • 记录信息(而不停止执行)。
  • 触发脚本(比如打印变量或甚至运行 shell 命令)。

右击断点 → "Edit Breakpoint"(编辑断点)→ 添加一个动作。

例如:无需修改代码,就能在某个函数被调用时自动记录日志。


8. 辅助编辑器(⌘ + ⌥ + ↩)

在处理 SwiftUI 预览或相关的测试文件时,打开辅助编辑器可以并排查看两个文件。

例如:

  • 左侧:你的视图代码。
  • 右侧:预览文件。

现在,你对代码的每次微调都会实时显示,再也不用切换上百次标签页了。


9. 全局搜索(⇧ + ⌘ + O)

想不起来 fetchUserData() 函数在哪里?

按下 Shift + Command + O,输入名称,Xcode 就会直接跳转到它所在的位置。

这个功能适用于类、函数、枚举、故事板------基本上所有东西。它比在文件夹中滚动查找快得多。


10. 运行多个模拟器

你不需要一次只测试一个 iPhone 或 iPad UI。

进入 Window → Devices and Simulators(窗口 → 设备和模拟器),启动多个设备,然后同时在它们上面运行你的应用。

这对于测试响应式布局或及早发现 iPad 特定 bug 来说,非常有用。

相关推荐
ETA818 小时前
状态管理没那么复杂:手写实现 Zustand 核心逻辑
前端·react.js
用户2557788508118 小时前
axios请求缓存
前端
夫瑞19 小时前
TypeScript 直接编译成原生二进制,没有浏览器,没有 V8
前端
Talents19 小时前
OpenLayers 7.5.2 判断点是否在区域边上
前端
cmd19 小时前
前端基础必看:JS 变量提升 & 函数提升完整解析
前端·javascript
小金鱼Y19 小时前
前端必看:this 不是玄学!5 大绑定规则帮你永久告别 this 困惑
前端·javascript·面试
谁在黄金彼岸19 小时前
用 AI 设计力打造专业 UI/UX:在 Trea、Qoder 等 AI IDE 中集成 ui-ux-pro-max-skill
前端
We་ct19 小时前
React Hooks 核心原理
前端·react.js·链表·前端框架·reactjs·hooks
~无忧花开~19 小时前
React组件与Props完全指南
开发语言·前端·react