每年升級(jí)Xcode都糾結(jié)要不要升級(jí)隆敢,升級(jí)后項(xiàng)目就會(huì)莫名報(bào)錯(cuò)考阱,今年也不出意外報(bào)錯(cuò)了
Charts項(xiàng)目報(bào)錯(cuò)
image.png
其實(shí)報(bào)錯(cuò)后第一時(shí)間去github官方查看勾拉,發(fā)現(xiàn)很多類似的問題,給出的解決方案是升級(jí)到4.1.0形入,但是pod install查不到最新庫(kù)一直報(bào)錯(cuò)
然后嘗試下載最新代碼手動(dòng)引入該庫(kù)全跨,運(yùn)行后import algorithms
庫(kù)報(bào)錯(cuò),嘗試引入失敗后放棄了
解決辦法:
實(shí)現(xiàn)replaceSubrange協(xié)議方法
image.png
public func replaceSubrange<C>(_ subrange: Swift.Range<Int>, with newElements: C) where C :
Collection, ChartDataEntry == C.Element {
}
實(shí)現(xiàn)協(xié)議后還是報(bào)錯(cuò)
image.png
聽說是swift5不支持多級(jí)嵌套問題亿遂,于是我把swift庫(kù)調(diào)整為4.2還是報(bào)錯(cuò)浓若,后來通過源碼對(duì)比替換一下代碼搞定
internal static let EaseOutBack = { (elapsed: TimeInterval, duration: TimeInterval) -> Double in
let s: TimeInterval = 1.70158
var position: TimeInterval = elapsed / duration
position -= 1.0
return Double( position * position * ((s + Double(1.0)) * position + s) + Double(1.0) )
}
總結(jié)
解決這個(gè)問題浪費(fèi)了半天時(shí)間渺杉,于是想著把解決問題的方法寫出來,希望能幫到有緣人
^-^
另外升級(jí)Xcode后跑個(gè)項(xiàng)目挪钓,電腦發(fā)熱很嚴(yán)重