強制去除警告
單個文件去除警告
在警告處使用以下方法
#pragma clang diagnostic push
#pragma clang diagnostic ignored "警告類型"
...
#pragma clang diagnostic pop
或在Build Phases中文件名后加入警告類型需要將警告類型中的-W
替換為-Wno-
整個工程去除警告
在 PROJECT的Build Settings中Other Warning Flags 一欄中加入警告類型也需要將警告類型中的-W
替換為-Wno-
xib去除警告
xib中常見警告為
Automatic Preferred Max Layout Width before iOS 8.0
需要將Builds for改為iOS 8.0
Highlighted property is only for display within interface builder
需要將XIB文件通過Source Code打開之后將當(dāng)中highlighted="YES"
的內(nèi)容改為NO
CocoaPods去除警告
在Podfile中加入以下內(nèi)容可以去除警告
pod 'ReactiveCocoa', '~> 2.1', :inhibit_warnings => true
不過上面方法有時會出現(xiàn)錯誤
可以加入下面代碼
platform :ios, '9.0'
inhibit_all_warnings!
來清除所有pods中的警告
警告內(nèi)容
警告內(nèi)容 | 警告類型 |
---|---|
沒有實現(xiàn)聲明的方法 | -Wincomplete-implementation |
使用NS_DESIGNATED_INITIALIZER同時沒有重寫init等方法 | -Wobjc-designated-initializers |
沒有實現(xiàn)協(xié)議 | -Wprotocol |
參數(shù)格式不匹配 | -Wmismatched-parameter-typess |
指針格式不兼容 | -Wincompatible-pointer-types |
方法棄用告警 | -Wdeprecated-declarations |
循環(huán)引用 | -Warc-retain-cycles |
未使用變量 | -Wunused-variable |
未聲明方法 | -Wundeclared-selector |
指針和bool轉(zhuǎn)換使得bool一直為true | -Wpointer-bool-conversion |
... | ... |
警告內(nèi)容可以在警告的log中獲取