我正在尝试组织我的项目,我想知道我要解释的内容是否可能:假设我有一个协议(protocol),它定义了 10 个函数,其中一些用于在 View Controller 之间传输数据(委托(delegate))。
现在,当我使 View Controller 符合该协议(protocol)时,我需要定义所有这些函数,女巫使我的 View Controller 加载了代码。我想知道的是,是否可以创建一个单独的类(例如 Service),然后使该类符合该协议(protocol),并且在我的 View Controller 中我只需调用 Service.nameOfFunction()。
我不知道这如何与委托(delegate)一起使用,例如,如果有一个使用 MapView 的函数,我需要将其作为参数,但在另一个 View Controller 中我没有 MapView 那又怎样调用函数时要传入参数吗?
我知道这有点令人困惑,但我希望你能理解。
最佳答案
只需为方法声明中的参数设置默认值即可。 在调用该函数时,您可以传递一个值或跳过它。如果传递了一个值,那么该值将在方法内被覆盖。
关于ios - 协议(protocol)函数位于单独的文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50232289/