隨着Xcode9 Swift4 的到來,一些小問題也接踵而至。許多優秀的Swift第三方框架還將來得及迎接Swift4的到來,它們還停留在swift3.x的狀態,這個時候新建一個項目,使用cocoapods寫上須要使用的第三方,一編譯就是滿屏紅,以下圖。swift
所幸,蘋果每次升級Xcode都會保留上個版本的swift,以防暴亂😬~~bash
有兩種解決方案 其本質都是控制編譯時所使用的Swift版本微信
Pods -> Targets -> SnapKit -> Build Settings -> Swift language version option 選擇 Swift 3.2。不推薦使用該方法,一個個點效率有些低~~app
打開Podfile文件,添加並按須要修改下方代碼來指定哪些第三方的Swift編譯版本,接着來一次框架
pod install
複製代碼
最後再來一下編譯就搞定了post
post_install do |installer|
# 須要指定編譯版本的第三方的名稱
myTargets = ['ObjectMapper', 'SnapKit']
installer.pods_project.targets.each do |target|
if myTargets.include? target.name
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '3.2'
end
end
end
end
複製代碼
位置如圖所示 ui