我正在将我的应用程序从Swift 3更新到Swift 4,并且在迁移之后,存在一些错误。其中一个Method 'initialize()' defines Objective-C class method 'initialize', which is not permitted by Swift
在IQKeyboardManager
的IQToolbar中,如何解决这个问题?
答案 0 :(得分:1)
- 您也可以使用Singleton解决此问题,例如:
static let shared : AudioTools = {
$0.initialize()
return $0
}(AudioTools())
您的Objective-C方法--->初始化
override class func initialize(){code here}
变化:
func initialize(){code here}
您的方法:
func playSound(fileName:String?) {
code here
}
在Swift3中使用:
let audioPlayer = AudioTools.playMusic(fileName: fileName)
在Swift4中使用
let audioPlayer = AudioTools.shared.playMusic(fileName: fileName)