工欲善其事必先利其器之熟悉 Xcode 的使用
引言
作为一个 iOS 编程者,掌握手中的编译器则是一项必不可少的技能,正所谓工欲善其事必先利其器嘛。所以今天就通过这篇博客,大家一块儿来熟悉熟悉手中的 Xcode。
认识 Xcode
界面布局
首先让我们先来看一下 Xcode 的界面,了解每一部分是干什么用的。下面就通过下面这幅图,大家和自己的 Xcode 界面一一对应一下。
下面是组成窗口的每一个独立区域的快速浏览:
The Toolbar(工具栏): 你选择视图,运行app,在不同布局界面切换的地方
The Navigation Area(导航区): 导航你整个工程,警告,报错等的地方
The Editing Area(编辑区): 所有奇迹诞生的地方,包括它上方的Jump bar
The Utility Area(工具区): 包含检测器和一些库
The Debugging Area(调试区): 包括调试窗口和变量检测器
上面列出的所有视图区域都是 Xcode 的必要的组成部分,它们也是在你开发过程中可能需要用到的,开发过程中通常不需要将他们一次性同时显示出来,下面将介绍一些快捷键,将会教你快速显示/隐藏这些视图区域。
常用的快捷键
在这一部分,你将首先学到怎么掌握这些快捷键,任何事物,都是有规律的,包括我们的 Xcode 。得益于这些模式规律,你将更容易识记这些快捷键。
第一个需要知道的是 Xcode 的各区域与修饰键的关系
command 键
: 用来导航,控制导航区域; alt option
: 控制右边的一些东西,比如 Assistant Editor,utility editor control
: 编辑区域上的 Jump bar 的一些交互
接下来,需要知道的时数字键和标签栏的关系,将数字键和上面提到的修饰键组合可以在标签页之间来回切换。通常数字键对应标签页的索引位置(从1开始),0通常用来显示/隐藏区域。
下面是最常用的组合键: Command 1~ 8:
跳转到导航区的不同位置 Command 0 :
显示/隐藏导航区 Command Alt 1~ 6:
在不同检测器之间跳转 Command Alt 0:
显示/关闭工具区. Control Command Alt 1~4:
在不同库之间跳转 Control 1~ 6:
在Jump bar的不同标签页的跳转。
它还能再直观一点吗? 好吧,那就给图吧。
同样,有些同学就会问,我可不可以实现不同的编辑器来回切换呢?
当然可以啊,enter
+ command
的组合就可以完成这个神奇的效果
Command + Enter
: 显示标准单窗口编辑器 Command + Alt + Enter
:它的功能是打开Assistant editor Command + Alt + Shift + Enter
: 打开版本控制编辑器
那么,显示隐藏调试区呢?command + shift + Y
就可以实现了。
还有一些基本的快捷操作,这里也一并奉上吧。
搜索快捷键: Command+Shift+F
:搜索导航器(Find Navigator,也就是搜索),使用项目搜索可以找到某个变量或方法名的被提到的次数。可以依据实例来匹配,并可忽略大小写字母。另外还可以对查找的变量名进行替换。 Control+6
(键入方法/变量名+Enter跳转):跳转至当前代码文件中的代码行。如果文件中有上千行代码,你可以通过该快捷操作来缩小查找范围,从而在需要的地方插入代码以添加新的功能。 Command + Shift + O
:快速打开,可以直接跳转到某个方法定义或者指定的代码文件 Control + Command + Up Arrow
:程序中(Objective-C或C++编写).h and .m文件间的快速切换
应用程序编译和清理 Command + R
:运行编译 APP Command + Shift + K
:清除工程 Command + B
:构建应用程序
文档和帮助 Command + Shift + 0
:文档和参考
编译器调试
我们现在正在使用着世界上最好的c、c++、oc、swift的编译器——LLVM,lldb就是这个世界上最好的LLVM的调试器!(不要害羞,因为我们是最优秀的!所以肯定要用最好的!)那么掌握 lldb 的使用,也是一项必备的装B技能。不知道什么是 lldb 以及 LLVM 的童鞋,请自行百度。
下图,右侧绿色区域就是Log 输出区,在 Log 输出区可以使用一些命令,来辅助调试。
调试命令
想要看所有的调试命令,可以在上图的右侧区域输入help,就会列出所有的调试命令,如下图所示。
这里,就简单介绍几个使用频率比较高的命令
p 命令:
p 命令是 print 命令的简写,使用p 命令可以查看基本数据类型的值,但是如果 使用 p 命令 查看的是对象,那么只会返回对象的指针地址。
p 命令后面除了可以接 变量、常量,还可以接 表达式。(但是不可以使用宏)
po 命令
po 命令可以理解为打印对象。功能与 p 命令类似,所以也是可以打印 常量、变量,打印表达式返回的对象等。(也不可以打印宏)
当然,这些打印功能,除了使用命令外,我们也可以使用左侧区域,点击变量右键—> print Description of “xxx”:
expr 命令
expr 是 expression 的简写, 使用expr 命令,能够在调试时,动态的执行赋值表达式,同时打印出结果。我们可以在调试时,动态的修改变量的值,这在调试想要让应用执行异常路径(如执行某个else 情况)很有用。
call 命令
Xcode 还支持动态调用函数。在控制台执行该命令,可以在不修改代码,不重新编译的情况下,修改界面上的视图。
bt命令
bt 命令 可以打印出线程的堆栈信息,该信息比左侧的Debug Navigator 看到的还要详细一些。
bt 命令是打印当前线程的堆栈信息
iOS 模拟器快捷键
Cmd+1/2/3
:能够切换模拟器的显示比例 Option+Shift
:能够在模拟器中调出双指拖动效果 Option
:能够在模拟器中调出双指放大缩小效果 Command+Shift+H
: 模拟器的Home键 Cmd+向左箭头/向右箭头
: 切换横竖屏
附录
参考博客:Xcode 的调试技巧 、高效使用你的 Xcode 、
下一篇: 文件有关