是否可以声明协议并定义可符合该协议的对象类型?
我有一组闭包,我想在项目中的不同子类
我想要一个工厂函数,它创建正确类型的
这样我就可以配置各种闭包并将视图控制器推入导航控制器。
我可以选择...
返回
或者...
返回协议类型,然后可以正确设置闭包,但是编译器不知道它是
有没有办法两者兼顾?
谢谢
我有一组闭包,我想在项目中的不同子类
UIViewController
中配置它们。(它们都相关)。我想要一个工厂函数,它创建正确类型的
UIViewController
子类,但将其作为协议类型返回。这样我就可以配置各种闭包并将视图控制器推入导航控制器。
我可以选择...
返回
UIViewController
超类并将其推入导航堆栈,但无法正确设置闭包,因为编译器不知道它符合协议。或者...
返回协议类型,然后可以正确设置闭包,但是编译器不知道它是
UIViewController
子类,所以无法将其推入导航控制器。有没有办法两者兼顾?
谢谢
UIViewController
返回,然后使用if let...
来确定其是否符合协议吗? - Fogmeister