对于一个有强迫症的我,每次 ⌘B Build 项目时,发现一个警告都要点进去修复了,然而,对于一些无关紧要的警告,我们是否可以选择忽略这个警告,让 Xcode 不提示呢?答案当然是可以的。
下面,就介绍一下在项目中忽略警告的三个地方:
在源文件中忽略警告
在一些第三方库中,总能看到下面这段代码的身影,这就是用于忽略某个警告
#pragma clang diagnostic push
#pragma clang diagnostic ignored "警告标识符"
...
...
#pragma clang diagnostic pop
用法很简单,比如在控制器的 -viewDidLoad 中写了句创建一个 eTestView 的代码
UIView *eTestView = [[UIView alloc] init];
Xcode 会立即报一个警告,提示我们没有使用这个变量
Unused variable 'eTestView'
只需在创建 eTestView 的前后加上如下几行,黄色警告就消失了😄
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-variable"
UIView *eTestView = [[UIView alloc] init];
#pragma clang diagnostic pop
至于警告标识符,鼠标点几下就可以找到。
如下图,右击某个警告,选择 Reveal in Log(有时这个选项可能是置灰状态,不能选择,可以尝试编译下项目,或者退出 Xcode 重新来一次)
Reveal in Log
下图红色框中,中括号内部的就是警告标识符(先要点击右上角展开警告才能看到这一大堆信息)
Build Settings 中项目全局忽略警告
这里所填写的内容规则,仅仅是在第一种方法中找到的警告标识符中的 W 字母后面加上 no- 就可以了。
CocoaPods 导入第三方库忽略警告
通过 CocoaPods 给项目导入了一些第三方库,这些库里面或多或少会有些警告,想消除这些警告,很简单,只需在 Podfile 中加上这一句 inhibit_all_warnings!,所有通过 CocoaPods 安装的第三库的警告就没有了。













网友评论