Xcode技巧系列:http://www.jianshu.com/notebooks/7639304/latest
本文章主要是对Xcode的界面布局进行总结,方便工作中能够清楚应该用哪一部分,同时,也加深一下对Xcode的理解。本文使用的是Xcode8.0版本。
1.创建项目
左侧①部分,这是用来建立和导入项目的,分别作用:
1.使用Playground来开始项目,帮助我们快速实现自己的想法,比如突然想到一个东西,想验证一下,但是新建一个项目的话,需要重新跑模拟器,很麻烦,这个时候用Playground就是最好的选择。
2.创建一个新的项目,如果需要重头开始写一个项目的话,那就是选这个。
3.从代码库下载代码,可以从服务器上的代码库里面下载到本地,然后运行,通常用于多人协作开发。
右侧②部分,列举了最近使用过得项目,方便快速打开项目
如果需要的项目不在列表中,那么,可以点击下方的Open another project...来选择要打开的项目。
2.Playground
选择第一项,会进入Playground。大家称之为训练场,在这里,可以使用Swift来实现各种功能,当然,现在也只支持Swift,比如我们可以写一套逻辑,然后在右侧观察显示的结果是否正确。
注意:Playground里面运行Swift看起来像是让Swift具有了某些脚本语言的特性,但是实际上,Swift并不是脚本语言,也就是说不是解释性语言,仍然是编译型语言,这得归功于强大的LLVM编译器的能力。
如图所示:
1.在右侧区域,我们可以实时的看到常量、变量的值、打印的内容以及循环次数等。
2.鼠标指向右侧的值,会看到出现了一只小眼睛和一个白色的小圆圈。其中小眼睛就是快速查看的作用,可以快速查看完整的值。点击小眼睛,会出现一个对话框,显示了该变量或常量的值。
3.白色的圆圈是显示结果的作用,点击后,可以将对话框中显示的结果嵌入到代码片段里面,再次点击,会将结果框移除,或者点击结果框的关闭也可以移除。
4.下方的三角箭头,点击后会重新运行一遍Playground。
3.创建项目
选择第二项,就是创建新的项目。
上部分是用来创建项目用的,而下部分更多是用来创建一个库文件打包用的。
下方是所有iOS类别中的列表:
名称 | 作用 |
---|---|
Single View Application | 创建一个带有空白视图的简单应用 |
Game | 创建一个简单的游戏应用,在弹出的项目设置对话框中选择对于的游戏技术,即可完成创建 |
Master-Detail Application | 创建一个可以查看详细信息的应用 |
Page-Based Application | 创建一个带翻页效果的应用 |
Tabbed Application | 创建一个底部带标签的应用 |
Sticker Pack Application | Xcode8新出的,创建一个表情包应用 |
iMessage Application | Xcode8新出的,创建一个iMessage应用 |
Cocoa Touch Framework | 创建出一个框架项目,项目不能运行,但可以编译出框架 |
Cocoa Touch Static Library | 创建一个静态库项目,项目不能运行,但可以编译出静态库 |
Metal Library | Metal:iOS8以后苹果出的GPU加速3D绘图的新API,创建Metal库 |
我们一般选择创建Single View Application,选择后,会出现如下所示:
其中最后三项可以不用勾选,因为如果项目需要的话,也可以后期创建,不用一开始就勾选上。
创建好后,进入到Xcode,看到项目设置界面,如图:
上方依次的作用是:
General:项目一般设置,包括项目的证书,标识符等。
Capabilities:项目的能力,比如设置项目具有哪些功能,这些功能是需要手动开启的。
Resource Tags:管理项目中的资源。
Info:就是项目中info.plist文件的映射,两者内容一样的。
Build Setting:编译设置。
Build Phases:编译资源。
Build Rules:编译规则。
4.工具栏
Xcode的界面布局如果所示。
其中顶部的工具栏可以快速访问频繁使用的命令。
从左到右依次:
1.运行按钮
2.停止按钮
3.方案选择菜单:选择你想运行的产品。
4.活动查看器:展示当前执行的任务。当有很多进行再同时进行时,左侧会出现一个数字,单击数字,可以看到一个现实所有当前进程进度的弹出框。当有警告时,也会显示出来。
5.编辑器配置按钮:配置编辑区域。
6.工作区配置按钮:控制Xcode横向区域的显示。
5.导航器区域
从左到右依次:
1.项目导航器:项目的源码和资源文件。
2.符号导航器:显示代码中的类、对象、函数等元素信息。
符号 | 含义 |
---|---|
C | 类 |
F | 结构体 |
Pr | 协议 |
S | 联合体 |
U | 函数 |
E | 全局变量 |
T | 枚举 |
V | 枚举成员 |
K | 类型定义 |
M | 方法 |
P | 属性 |
3.搜索导航器:用来显示搜索结果和选择搜索方式。
4.事件导航器:显示在工具区找到的任何事件。比如各种错误等等。
其中by file表示按照文件分类,by type表示按照问题类型进行分类。
底部的过滤导航栏提供过滤:时钟表示显示最后一次编译中发现的警告,惊叹号表示是否只显示错误信息,而隐藏警告的出现。
5.测试导航器:显示单元测试用例以及测试结果,还可以快速执行单元测试。
6.调试导航器:显示应用程序在调试状态下资源占用状态以及堆栈信息。
7.断点导航器:显示应用程序中标记的所有断点信息。
8.日志导航器:显示所有日志信息,包括编译、分析、测试、调试的日志信息。
by group表示按照项目日志分类,by time按照事件分类。
底部按钮,第一个创建机关,第二个是否只显示最后一次操作之后所产生的日志,第三个是否只显示连续集成操作的日志信息。
6.跳转栏
该栏的作用显示项目组织结构中所处的位置,可以直接跳转到项目中任意层次。
项目菜单点击后,会出现下拉列表:
上下文跳转
Recent Files:最近打开的文件
Counterparts:跳转到正在编辑的配对文件,.h跳.m
User Interfaces:跳转当前类的xib或storyboard文件
Preprocess:跳转到当前文件预处理之前的状态
Assembly:跳转到当前文件处理之后状态
Disassembly:跳转到当前文件处理之前状态,与Assembly配套使用。
类层级关系
Superclasses:跳转当前类的父类
Subclasses:跳转当前类的子类
Siblings:跳转当前类的同级类
Categories:跳转当前类的扩展
Protocols:跳转当前类的协议
文件包含关系
Includes:从.m跳转到.h
Included by:从.h跳转到.m
方法调用关系(B调用了A)
Callers:在A中跳到B
Callees:在B中跳到A
测试调用关系
Test Classes:跳转到引用当前测试方法的测试类中
Test Callers:跳转到调用当前测试方法的测试方法中
Swift特有
Original Source:只能在OC和Swift混编时使用,在调用了OC方法的Swift方法中,可以跳转该OC方法
7.编辑器区域
编辑器区域是动态出现的,随时可以和别的编辑器切换。编辑器有很多,比如:
源码编辑器:编写源码
界面编辑器:编辑可视化界面
等等。
8.调试区域
当Xcode运行时,会开启调试功能,可以通过打断点的方式,来控制程序的执行,或者输出打印等等。
9.工具区域
包括了两部分:
上半部分inspectors:检查器,查看和更改编辑器中元素的属性和特性,从做左到右依次:
1.文件检查器:查看和管理选中文件的元数据,尤其是要进行本地化故事版和其他媒体文件,并更改用户界面文件设置操作的时候
2.快速帮助检查器:查看元素的帮助信息,比如方法的简单描述,何处声明,范围,参数,平台,可用架构等
如果是xib或storyboard会有更多的检查器,由于本人所写代码都是纯代码编写,所以就不做介绍了。
下半部分资源库:代码片段,控件,资源等,从左到右依次:
1.文件模板:默认代码结构的文件模板
2.代码片段:存储经常用到的代码片段
3.对象:图形界面的控件库
4.媒体:图片、声音、视频等资源
10.标签页
可以通过file->new->tab创建新的标签页,效果和使用safari打开多个网页一样。可以通过双击标题修改名称,不会对原文件产生任何影响。关闭只需要点击x即可。