繁体   English   中英

Swift - 使用协议的返回类型

[英]Swift - return type that uses a protocol

我正在尝试在Swift项目中实现DeepLinkSDK ,但我在将此转换为swift时遇到问题:

@implementation ProductRouteHandler

- (UIViewController <DPLTargetViewController> *)targetViewController {
  return [[ProductDetailViewController alloc] init];
}

@end

谁能给我一个帮助? 提前致谢

我不知道你可以指定一个返回类型,意思是“符合TA一些子类”,但你可以做的只是将返回类型设置为ProductDetailViewController ,因为Swift允许在子类中重写的方法的协变返回类型 (如Java,C ++或Scala)。

override func targetViewController() -> ProductDetailViewController  {
    return ProductDetailViewController()
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM