WKL*_*WKL 4 objective-c ios swift
enum SearchBarAction {
case Cancel
case Bookmark
case Location
case Category
case Filter
}
@objc protocol SearchBarNavigatorDelegate: class {
optional func searchBarNavigator(clicked: SearchBarAction)
}
Run Code Online (Sandbox Code Playgroud)
这给了我一个错误
Method cannot be a member of an @objc protocol because the type of the parameter cannot be represented in Objective-C
Run Code Online (Sandbox Code Playgroud)
我需要这个方法是可选的,因此我不能删除@objc来解决这个问题.
在将枚举作为参数传递给方法时,有没有办法使用可选的协议方法?
Rob*_*Rob 12
如果您将枚举声明为@objc原始类型,它将起作用:
@objc enum SearchBarAction: Int {
case cancel
case bookmark
case location
case category
case filter
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1419 次 |
| 最近记录: |