2017年9月22日 星期五

關於Swfi4 使用到#selector的一些小修正

近期Apple已經釋放出正式版Xcode9雖然可以向下相容 Swift3.2
但我相信很多人會使用Swift4來進行編譯

跟以往有點不同的是這次因為有向下相容,所以原本專案是Swift3.2的話Xcode9並不會主動幫你升級成Swift4必須自己手動去調整。這邊就附上圖片給大家看一下

選擇你的prohect > targets > 專案名稱 > Build Settings > 收尋swift languae version去更改成swift4.0

好了以上是一點點的題外話,這邊主要是要說如果你在swift4中有使用#selector
在selector我們在swift3中會使用
#selector(funcName)這樣會無法像以往一樣做最簡單的方式 func xxxx(){ ... }
這樣系統會出現警告
這時不用擔心只要一個小動作,就是在func的前面加上@objc警告就會消失了唷!或是可以直接點選警告後按下Fix系統會自動幫你在該func前面帶入@objc

引述Swift3使用#selector指定的方法,只有當private時需要加上@objc,現在全部都要加上@objc


沒有留言:

張貼留言