谈谈XCode9的新变化

2020-01-21 00:59:42刘景俊

XCode9已经随着ios11的发布发布了,那么在这个XCode9版本中有哪些变化呢?

1 折叠代码

焦点在方法的实现体的方法名上,按comman键,则整个函数会被框住.用来标志这个方法的起点和终点

此时单击,出现菜单

XCode9,新变化

在菜单里,有个Fold,可以用来折叠方法,这个折叠现在有个动画效果

在其它上面点击

XCode9,新变化

常用的重构方式都已经集成在这个右键弹出菜单中了,可见,XCode9对于重构的支持度又增加了,以后重构代码将更加方便快捷

在XCode9之前,在变量或方法上,按CMD+单击,是直接Jump to Definition,但是现在,是弹出这个菜单,对于跳转到变量的定义,就多了一步了,开始可能会觉得不方便

对于想直接跳转到变量定义,现在是 control+command+单击

当然,如果你还是觉得以前的cmd+单击 跳转到变量定义,你更习惯,可以在

XCode9,新变化

更改为以前那种行为

2 关于警告

我们定义一个不带参数的block,通常是如下的方式


typedefvoid(^UpdateSwichBtnBlock)();

在xcode9中会提示一个警告


This block declaration is not a prototype
Insert ‘void'

解决方式可以是如下的几种


typedefvoid (^UpdateSwichBtnBlock)(void);

但是这样,很多第三方要改,涉及的面太大了,目前可能不太适合,虽然这个是趋势.

或者,如果只是很少的地方,也可以使用


#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wstrict-prototypes"

typedefvoid (^UpdateSwichBtnBlock)();

#pragma clang diagnostic pop

彻底的暂时解决所有这种警告的方式

在工程的设置中

XCode9,新变化

设置为NO,则这些警告就消失了

不过这不是一种好习惯,只是暂时性的不让提示这种类型的警告而已

3 重构相关

对一个方法或者变量的重命名,在方法上CMD+单击,出现的菜单,选择rename

XCode9,新变化

可以看到,它把重命名会出现的改动,都动画折叠起来,让你更有概念,将会影响哪些,更直观!

4 cmd +/- 可以用来调整编辑器的字体大小了

在展示PPT的时候将很有用

5 Source Control的极大增强