在我的一个 Objective-C 类中,我有一个 type 属性,我UIViewController<UIProfileListHeaderDelegate>将如何在 Swift 中表示它?我需要从UIViewController和访问属性和方法UIProfileListHeaderDelegate。
谢谢!
处理这个问题的快速方法是定义一个协议,其中包含相关方法UIViewController并让您UIProfileListHeaderDelegate从中继承。
用你关心的方法定义一个协议:
protocol ViewControllerSubset {
var view:UIView!
}
Run Code Online (Sandbox Code Playgroud)
声明 UIViewController 实现了协议,不需要实际实现任何东西,因为它已经存在
extension UIViewController : ViewControllerSubset {}
Run Code Online (Sandbox Code Playgroud)
继承你的协议
protocol UIProfileListHeaderDelegate : ViewControllerSubset
Run Code Online (Sandbox Code Playgroud)
你走吧。
如果你不想改变你的协议的层次结构(或者不能因为它是一个系统协议)你可以定义一个包含两个协议的协议)
protocol EquatableAndComparable : Equatable, Comparable { }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1097 次 |
| 最近记录: |