Swift 3.0 将 NSArray 作为 Any 传递
Swift 3.0 passing NSArray as Any
我们在 Objective-C 中有一个框架,它有一个 init
,其中 NSArray
作为参数。
使用 Swift 3 中的框架一切都很好,除了尝试将 NSArray
作为参数传递。
错误是:
Cannot convert value of type 'NSArray' to expected argument type '[Any]!'
尝试了各种类型转换,但都没有成功。无论如何要让它通过?
请不要评论在 Swift 中使用 NSArray
,等等
这段代码似乎可以在 playground 中运行并且没有显示任何错误
func someFunc(nsarray: NSArray) {
/// some implementation
}
let array = [Any]()
someFunc(nsarray: array as NSArray)
我们在 Objective-C 中有一个框架,它有一个 init
,其中 NSArray
作为参数。
使用 Swift 3 中的框架一切都很好,除了尝试将 NSArray
作为参数传递。
错误是:
Cannot convert value of type 'NSArray' to expected argument type '[Any]!'
尝试了各种类型转换,但都没有成功。无论如何要让它通过?
请不要评论在 Swift 中使用 NSArray
,等等
这段代码似乎可以在 playground 中运行并且没有显示任何错误
func someFunc(nsarray: NSArray) {
/// some implementation
}
let array = [Any]()
someFunc(nsarray: array as NSArray)