今天把公司項目的swift代碼升級到Swift3,遇到了不少坑
現在總算能跑起來了..還有很多坑要踩...
這是改之前的慘狀:
發現一條寫一條,不定時更新
選了Later之後還想調用系統的自動升級[Edit > Convert > To Current Swift Syntax…]
之前一個控件layoutIfNeed 會帶動它所約束的控件一起layout,現在只會單獨計算,想達到之前的效果只能整個父級控件調用layoutIfNeed方法了
swift取oc得NSDate回自動變成Data類型,一些操作NSDate的第三方庫(如:DateTools)會崩潰
block的形參要加 " _ " 方法的第一個參數前也要加形參名
flatmap和map會返回一個非數組的類型,需要重新用一個返回[T]的方法重寫一遍..語法都沒有變,改了就好了
控制台會輸出一大堆網絡日志,需要再Run裡加一個OS_ACTIVITY_MODE = disable stackoverflow:http://stackoverflow.com/questions/37800790/hide-strange-unwanted-xcode-8-logs/39461256#39461256
Swift調用OC對象屬性都自帶Optional了,使用的時候要拆包
升級Xcode之後想支持以前的插件可以在~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
路徑下添加你現在的Xcode的UUID,查看你Xcode的UUID/Applications/Xcode.app/Contents
上面方法還不行的看這個http://vongloo.me/2016/09/10/Make-Your-Xcode8-Great-Again/?utm_source=tuicool&utm_medium=referral
如何向 Swift 3.0 進行數據遷移:http://gold.xitu.io/entry/57a3044e2e958a0066850a48
兼容iOS 10 資料整理筆記:http://www.jianshu.com/p/0cc7aad638d9